diff --git a/app/modules/trimemedia/api.py b/app/modules/trimemedia/api.py index febfc9d7..4f13b7a2 100644 --- a/app/modules/trimemedia/api.py +++ b/app/modules/trimemedia/api.py @@ -111,7 +111,7 @@ class Api: "_api_path", "_request_utils", "_version", - "_session" + "_session", ) @property @@ -287,6 +287,18 @@ class Api: return True return False + def task_running(self): + """ + 当前正在运行的任务 + """ + if ( + res := self.__request_api("/task/running") + ) and res.success: + if res.data: + # TODO 具体正在运行的任务 + return True + return False + def __build_item(self, info: dict) -> Item: """ 构造媒体Item diff --git a/app/modules/trimemedia/trimemedia.py b/app/modules/trimemedia/trimemedia.py index 6b160809..f8fb844e 100644 --- a/app/modules/trimemedia/trimemedia.py +++ b/app/modules/trimemedia/trimemedia.py @@ -111,6 +111,8 @@ class TrimeMedia: if self._userinfo is None: return False logger.debug(f"{self._username} 成功登录飞牛影视") + # 刷新媒体库列表 + self.get_librarys() return True def disconnect(self): @@ -311,6 +313,8 @@ class TrimeMedia: logger.error("飞牛仅支持管理员账号刷新媒体库") return False + # 必须调用 否则容易误报 -14 Task duplicate + self._api.task_running() logger.info("刷新所有媒体库") return self._api.mdb_scanall() @@ -337,6 +341,8 @@ class TrimeMedia: # 媒体库去重 libraries.add(lib.guid) + # 必须调用 否则容易误报 -14 Task duplicate + self._api.task_running() for lib_guid in libraries: # 逐个刷新 lib = self._libraries[lib_guid]