From 8c032d413f6e0dc8f1506e72d68d577da5cb08cb Mon Sep 17 00:00:00 2001 From: jxxghp Date: Fri, 10 Nov 2023 22:19:40 +0800 Subject: [PATCH] fix #1078 --- package.json | 4 ++-- plugins/doubanrank/__init__.py | 14 +++++++------- plugins/doubansync/__init__.py | 10 +++------- 3 files changed, 12 insertions(+), 16 deletions(-) diff --git a/package.json b/package.json index 9efe6ad..aa4c8da 100644 --- a/package.json +++ b/package.json @@ -38,7 +38,7 @@ "DoubanSync": { "name": "豆瓣想看", "description": "同步豆瓣想看数据,自动添加订阅。", - "version": "1.0", + "version": "1.1", "icon": "douban.png", "color": "#05B711", "author": "jxxghp", @@ -65,7 +65,7 @@ "DoubanRank": { "name": "豆瓣榜单订阅", "description": "监控豆瓣热门榜单,自动添加订阅。", - "version": "1.0", + "version": "1.1", "icon": "movie.jpg", "color": "#01B3E3", "author": "jxxghp", diff --git a/plugins/doubanrank/__init__.py b/plugins/doubanrank/__init__.py index 7f4b356..78f6a30 100644 --- a/plugins/doubanrank/__init__.py +++ b/plugins/doubanrank/__init__.py @@ -8,7 +8,6 @@ import pytz from apscheduler.schedulers.background import BackgroundScheduler from apscheduler.triggers.cron import CronTrigger -from app.chain.douban import DoubanChain from app.chain.download import DownloadChain from app.chain.subscribe import SubscribeChain from app.core.config import settings @@ -30,7 +29,7 @@ class DoubanRank(_PluginBase): # 主题色 plugin_color = "#01B3E3" # 插件版本 - plugin_version = "1.0" + plugin_version = "1.1" # 插件作者 plugin_author = "jxxghp" # 作者主页 @@ -47,7 +46,6 @@ class DoubanRank(_PluginBase): # 私有属性 downloadchain: DownloadChain = None subscribechain: SubscribeChain = None - doubanchain: DoubanChain = None _scheduler = None _douban_address = { 'movie-ustop': 'https://rsshub.app/douban/movie/ustop', @@ -70,7 +68,6 @@ class DoubanRank(_PluginBase): def init_plugin(self, config: dict = None): self.downloadchain = DownloadChain() self.subscribechain = SubscribeChain() - self.doubanchain = DoubanChain() if config: self._enabled = config.get("enabled") @@ -479,9 +476,8 @@ class DoubanRank(_PluginBase): # 识别媒体信息 if douban_id: # 识别豆瓣信息 - context = self.doubanchain.recognize_by_doubanid(douban_id) - mediainfo = context.media_info - if not mediainfo or not mediainfo.tmdb_id: + mediainfo = self.chain.recognize_media(meta=meta, doubanid=douban_id) + if not mediainfo: logger.warn(f'未识别到媒体信息,标题:{title},豆瓣ID:{douban_id}') continue @@ -491,6 +487,10 @@ class DoubanRank(_PluginBase): if not mediainfo: logger.warn(f'未识别到媒体信息,标题:{title},豆瓣ID:{douban_id}') continue + # 判断评分是否符合要求 + if self._vote and mediainfo.vote_average < self._vote: + logger.info(f'{mediainfo.title_year} 评分不符合要求') + continue # 查询缺失的媒体信息 exist_flag, _ = self.downloadchain.get_no_exists_info(meta=meta, mediainfo=mediainfo) if exist_flag: diff --git a/plugins/doubansync/__init__.py b/plugins/doubansync/__init__.py index fd81174..d97b6da 100644 --- a/plugins/doubansync/__init__.py +++ b/plugins/doubansync/__init__.py @@ -7,7 +7,6 @@ import pytz from apscheduler.schedulers.background import BackgroundScheduler from apscheduler.triggers.cron import CronTrigger -from app.chain.douban import DoubanChain from app.chain.download import DownloadChain from app.chain.search import SearchChain from app.chain.subscribe import SubscribeChain @@ -33,7 +32,7 @@ class DoubanSync(_PluginBase): # 主题色 plugin_color = "#05B711" # 插件版本 - plugin_version = "1.0" + plugin_version = "1.1" # 插件作者 plugin_author = "jxxghp" # 作者主页 @@ -53,7 +52,6 @@ class DoubanSync(_PluginBase): downloadchain = None searchchain = None subscribechain = None - doubanchain = None # 配置属性 _enabled: bool = False @@ -70,7 +68,6 @@ class DoubanSync(_PluginBase): self.downloadchain = DownloadChain() self.searchchain = SearchChain() self.subscribechain = SubscribeChain() - self.doubanchain = DoubanChain() # 停止现有任务 self.stop_service() @@ -478,9 +475,8 @@ class DoubanSync(_PluginBase): continue # 识别媒体信息 meta = MetaInfo(title=title) - context = self.doubanchain.recognize_by_doubanid(douban_id) - mediainfo = context.media_info - if not mediainfo or not mediainfo.tmdb_id: + mediainfo = self.chain.recognize_media(meta=meta, doubanid=douban_id) + if not mediainfo: logger.warn(f'未识别到媒体信息,标题:{title},豆瓣ID:{douban_id}') continue # 查询缺失的媒体信息