From 521a26435eaa6808004f8bc6b6ed03c879b7c90f Mon Sep 17 00:00:00 2001 From: honue Date: Sat, 16 Dec 2023 15:54:19 +0800 Subject: [PATCH 1/3] =?UTF-8?q?fix=20=E8=B1=86=E7=93=A3=E8=AE=A2=E9=98=85?= =?UTF-8?q?=E6=8F=92=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- plugins/doubanrank/__init__.py | 23 ++++++++++++++++++----- 1 file changed, 18 insertions(+), 5 deletions(-) diff --git a/plugins/doubanrank/__init__.py b/plugins/doubanrank/__init__.py index 3b8f9e1..5ffe7be 100644 --- a/plugins/doubanrank/__init__.py +++ b/plugins/doubanrank/__init__.py @@ -484,12 +484,14 @@ class DoubanRank(_PluginBase): title = rss_info.get('title') douban_id = rss_info.get('doubanid') + year = rss_info.get('year') unique_flag = f"doubanrank: {title} (DB:{douban_id})" # 检查是否已处理过 if unique_flag in [h.get("unique") for h in history]: continue # 元数据 meta = MetaInfo(title) + meta.year = year # 识别媒体信息 if douban_id: # 识别豆瓣信息 @@ -565,25 +567,36 @@ class DoubanRank(_PluginBase): items = rootNode.getElementsByTagName("item") for item in items: try: + rss_info = {} + # 标题 title = DomUtils.tag_value(item, "title", default="") # 链接 link = DomUtils.tag_value(item, "link", default="") + # 年份 + description = DomUtils.tag_value(item, "description", default="") + if not title and not link: logger.warn(f"条目标题和链接均为空,无法处理") continue + rss_info['title'] = title + rss_info['link'] = link + doubanid = re.findall(r"/(\d+)/", link) if doubanid: doubanid = doubanid[0] if doubanid and not str(doubanid).isdigit(): logger.warn(f"解析的豆瓣ID格式不正确:{doubanid}") continue + rss_info['doubanid'] = doubanid + + # 匹配4位独立数字1900-2099年 + year = re.findall(r"\b(19\d{2}|20\d{2})\b", description) + if year: + rss_info['year'] = year[0] + # 返回对象 - ret_array.append({ - 'title': title, - 'link': link, - 'doubanid': doubanid - }) + ret_array.append(rss_info) except Exception as e1: logger.error("解析RSS条目失败:" + str(e1)) continue From c1c5690874814a63f753af0b382e16af3ae9fc2b Mon Sep 17 00:00:00 2001 From: honue Date: Sat, 16 Dec 2023 15:55:02 +0800 Subject: [PATCH 2/3] fix version --- package.json | 2 +- plugins/doubanrank/__init__.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index 3d7ddbe..00e0de0 100644 --- a/package.json +++ b/package.json @@ -58,7 +58,7 @@ "DoubanRank": { "name": "豆瓣榜单订阅", "description": "监控豆瓣热门榜单,自动添加订阅。", - "version": "1.2", + "version": "1.3", "icon": "movie.jpg", "author": "jxxghp", "level": 2 diff --git a/plugins/doubanrank/__init__.py b/plugins/doubanrank/__init__.py index 5ffe7be..8912e95 100644 --- a/plugins/doubanrank/__init__.py +++ b/plugins/doubanrank/__init__.py @@ -27,7 +27,7 @@ class DoubanRank(_PluginBase): # 插件图标 plugin_icon = "movie.jpg" # 插件版本 - plugin_version = "1.2" + plugin_version = "1.3" # 插件作者 plugin_author = "jxxghp" # 作者主页 From 522dccdac6bb2d5dabdb07b6f936c2b3b9c8e4b3 Mon Sep 17 00:00:00 2001 From: honue Date: Sat, 16 Dec 2023 16:29:26 +0800 Subject: [PATCH 3/3] fix rssurl --- plugins/doubanrank/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/doubanrank/__init__.py b/plugins/doubanrank/__init__.py index 8912e95..6d40d21 100644 --- a/plugins/doubanrank/__init__.py +++ b/plugins/doubanrank/__init__.py @@ -48,7 +48,7 @@ class DoubanRank(_PluginBase): _douban_address = { 'movie-ustop': 'https://rsshub.app/douban/movie/ustop', 'movie-weekly': 'https://rsshub.app/douban/movie/weekly', - 'movie-real-time': 'https://rsshub.app/douban/movie/weekly/subject_real_time_hotest', + 'movie-real-time': 'https://rsshub.app/douban/movie/weekly/movie_real_time_hotest', 'show-domestic': 'https://rsshub.app/douban/movie/weekly/show_domestic', 'movie-hot-gaia': 'https://rsshub.app/douban/movie/weekly/movie_hot_gaia', 'tv-hot': 'https://rsshub.app/douban/movie/weekly/tv_hot',