From f140c1197abcb7ca5a29636615052382e8172d43 Mon Sep 17 00:00:00 2001 From: Attente <19653207+wikrin@users.noreply.github.com> Date: Wed, 9 Oct 2024 22:13:33 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8Dtmdbapi=E8=BF=94?= =?UTF-8?q?=E5=9B=9ENone=E5=AF=BC=E8=87=B4=E6=8F=92=E4=BB=B6=E5=B4=A9?= =?UTF-8?q?=E6=BA=83=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 3 ++- plugins/bangumicoll/__init__.py | 15 ++++++++++----- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/package.json b/package.json index 651a73d..b648f0f 100644 --- a/package.json +++ b/package.json @@ -3,11 +3,12 @@ "name": "Bangumi收藏订阅", "description": "Bangumi用户收藏添加到订阅", "labels": "订阅", - "version": "1.2", + "version": "1.2.1", "icon": "https://raw.githubusercontent.com/wikrin/MoviePilot-Plugins/main/icons/bangumi_b.png", "author": "Attente", "level": 2, "history": { + "v1.2.1": "修复tmdb没有查询到条目导致插件崩溃的问题", "v1.2": "修复已完成订阅条目重复添加的问题", "v1.1": "新增根据收藏状态移除由此插件添加的订阅", "v1.0": "将bangumi用户收藏添加到 MP 订阅,部分功能未实现" diff --git a/plugins/bangumicoll/__init__.py b/plugins/bangumicoll/__init__.py index adddc34..01d48ca 100644 --- a/plugins/bangumicoll/__init__.py +++ b/plugins/bangumicoll/__init__.py @@ -29,7 +29,7 @@ class BangumiColl(_PluginBase): # 插件图标 plugin_icon = "https://raw.githubusercontent.com/wikrin/MoviePilot-Plugins/main/icons/bangumi_b.png" # 插件版本 - plugin_version = "1.2" + plugin_version = "1.2.1" # 插件作者 plugin_author = "Attente" # 作者主页 @@ -464,8 +464,12 @@ class BangumiColl(_PluginBase): if not meta.name: logger.warn(f"{item.get('name_cn')} 未识别到有效数据") continue - # 由于Bangumi的api不包含季度信息,不传入Bangumi条目id,默认使用tmdb + # 设置默认年份, 避免出现多个结果使用早期条目 + meta.year = item.get("date")[:4] mediainfo: MediaInfo = self.chain.recognize_media(meta=meta) + # 识别失败则跳过 + if not mediainfo: + continue # 对比Bangumi和tmdb的信息确定季度 for info in mediainfo.season_info: # 对比日期, 误差默认7天 @@ -548,12 +552,13 @@ class BangumiColl(_PluginBase): # 比较差异和阈值 return delta <= threshold - + @db_query def get_subscribe_history(self, db: Session = None) -> set: ''' 获取已完成的订阅 ''' - result = db.query(SubscribeHistory).filter(SubscribeHistory.bangumiid != None).all() + result = ( + db.query(SubscribeHistory).filter(SubscribeHistory.bangumiid != None).all() + ) return set([i.bangumiid for i in result]) - \ No newline at end of file