From 66959937ed38cabac0d58887231b683ea80855ca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=99=AF=E5=A4=A7=E4=BE=A0?= Date: Sat, 3 Jan 2026 18:06:26 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=20=E7=94=B5=E5=BD=B1?= =?UTF-8?q?=E6=96=87=E4=BB=B6=E5=8F=AF=E8=83=BD=E4=BC=9A=E8=AF=AF=E8=AF=86?= =?UTF-8?q?=E5=88=AB=E6=88=90=E7=94=B5=E8=A7=86=E5=89=A7=E7=B1=BB=E5=9E=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/core/metainfo.py | 10 ++++++---- tests/cases/meta.py | 15 +++++++++++++++ 2 files changed, 21 insertions(+), 4 deletions(-) diff --git a/app/core/metainfo.py b/app/core/metainfo.py index c9dbe02f..132abce0 100644 --- a/app/core/metainfo.py +++ b/app/core/metainfo.py @@ -71,12 +71,14 @@ def MetaInfoPath(path: Path) -> MetaBase: file_meta = MetaInfo(title=path.name) # 上级目录元数据 dir_meta = MetaInfo(title=path.parent.name) - # 合并元数据 - file_meta.merge(dir_meta) + if file_meta.type == MediaType.TV or dir_meta.type == file_meta.type: + # 合并元数据 + file_meta.merge(dir_meta) # 上上级目录元数据 root_meta = MetaInfo(title=path.parent.parent.name) - # 合并元数据 - file_meta.merge(root_meta) + if file_meta.type == MediaType.TV or root_meta.type == file_meta.type: + # 合并元数据 + file_meta.merge(root_meta) return file_meta diff --git a/tests/cases/meta.py b/tests/cases/meta.py index 79ef9cb0..7becefef 100644 --- a/tests/cases/meta.py +++ b/tests/cases/meta.py @@ -1117,4 +1117,19 @@ meta_cases = [{ "audio_codec": "", "tmdbid": 19995 } +}, { + "path": "/movies/DouBan_IMDB.TOP250.Movies.Mixed.Collection.20240501.FRDS/为奴十二年.12.Years.a.Slave.2013.BluRay.1080p.x265.10bit.2Audio.MNHD-FRDS/12.Years.a.Slave.2013.BluRay.1080p.x265.10bit.2Audio.MNHD-FRDS.mkv", + "target": { + "type": "未知", + "cn_name": "", + "en_name": "12 Years A Slave", + "year": "2013", + "part": "", + "season": "", + "episode": "", + "restype": "BluRay", + "pix": "1080p", + "video_codec": "x265 10bit", + "audio_codec": "2Audio" + } }] From 740588344468f07fc60e32c3462eae4cd4970bdc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=A4=A7=E8=99=BE?= <802181+cddjr@users.noreply.github.com> Date: Sat, 3 Jan 2026 19:25:54 +0800 Subject: [PATCH 2/3] Update app/core/metainfo.py Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> --- app/core/metainfo.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/core/metainfo.py b/app/core/metainfo.py index 132abce0..acb2ce5f 100644 --- a/app/core/metainfo.py +++ b/app/core/metainfo.py @@ -71,7 +71,7 @@ def MetaInfoPath(path: Path) -> MetaBase: file_meta = MetaInfo(title=path.name) # 上级目录元数据 dir_meta = MetaInfo(title=path.parent.name) - if file_meta.type == MediaType.TV or dir_meta.type == file_meta.type: + if file_meta.type == MediaType.TV or dir_meta.type != MediaType.TV: # 合并元数据 file_meta.merge(dir_meta) # 上上级目录元数据 From 070425d446bc87bc15a339b07b279ac536d6564b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=A4=A7=E8=99=BE?= <802181+cddjr@users.noreply.github.com> Date: Sat, 3 Jan 2026 19:26:03 +0800 Subject: [PATCH 3/3] Update app/core/metainfo.py Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> --- app/core/metainfo.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/core/metainfo.py b/app/core/metainfo.py index acb2ce5f..0074db96 100644 --- a/app/core/metainfo.py +++ b/app/core/metainfo.py @@ -76,7 +76,7 @@ def MetaInfoPath(path: Path) -> MetaBase: file_meta.merge(dir_meta) # 上上级目录元数据 root_meta = MetaInfo(title=path.parent.parent.name) - if file_meta.type == MediaType.TV or root_meta.type == file_meta.type: + if file_meta.type == MediaType.TV or root_meta.type != MediaType.TV: # 合并元数据 file_meta.merge(root_meta) return file_meta