From 26995970e03cf154c835b9a6b2c187bf7148d732 Mon Sep 17 00:00:00 2001 From: ljmeng Date: Wed, 27 Mar 2024 13:01:00 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=BC=BA=E5=85=BC=E5=AE=B9=E6=80=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 2 +- plugins/crossseed/__init__.py | 23 +++++++++++++++-------- 2 files changed, 16 insertions(+), 9 deletions(-) diff --git a/package.json b/package.json index 5dbb07f..f95d810 100644 --- a/package.json +++ b/package.json @@ -186,7 +186,7 @@ "CrossSeed": { "name": "青蛙辅种助手", "description": "参考ReseedPuppy和IYUU辅种插件实现自动辅种,支持站点:青蛙【已验证】, AGSVPT, 麒麟, UBits, 聆音 等", - "version": "1.2", + "version": "1.3", "icon": "qingwa.png", "author": "233@qingwa", "level": 2 diff --git a/plugins/crossseed/__init__.py b/plugins/crossseed/__init__.py index 256d206..c37aaa1 100644 --- a/plugins/crossseed/__init__.py +++ b/plugins/crossseed/__init__.py @@ -36,7 +36,7 @@ class CrossSeed(_PluginBase): # 插件图标 plugin_icon = "qingwa.png" # 插件版本 - plugin_version = "1.2" + plugin_version = "1.3" # 插件作者 plugin_author = "233@qingwa" # 作者主页 @@ -192,7 +192,7 @@ class CrossSeed(_PluginBase): "func": self.auto_seed, "kwargs": {} }] - + elif self._enabled and self._token and self._downloaders and self._torrentpath: # 随机时间 triggers = TimerUtils.random_scheduler(num_executions=1, @@ -597,11 +597,17 @@ class CrossSeed(_PluginBase): logger.warn(f"尝试获取 {downloader} 的tracker出错 {err}") # 根据tracker补充站点信息 for tracker in tracker_urls: - # 站点信息 - tracker_domain = StringUtils.get_url_domain(tracker) - site_info = self.sites.get_indexer(tracker_domain) - if site_info: - torrent_info.site_name = site_info.get("name") + # 优先通过passkey获取站点名 + for site_config in self._site_cs_infos: + if site_config.passkey in tracker: + torrent_info.site_name = site_config.name + break + if not torrent_info.site_name: + # 尝试通过域名获取站点信息 + tracker_domain = StringUtils.get_url_domain(tracker) + site_info = self.sites.get_indexer(tracker_domain) + if site_info: + torrent_info.site_name = site_info.get("name") if self._nopaths and save_path: # 过滤不需要转移的路径 @@ -835,7 +841,8 @@ class CrossSeed(_PluginBase): ua=site_info.ua or settings.USER_AGENT, proxy=site_info.proxy) - if not content: + # 兼容种子无法访问的情况 + if not content or (isinstance(content, str) and "你没有该权限" in content): # 下载失败 self.fail += 1 self.cached += 1