From 4a20c56bea7a665fc2a2e800cd41743952ca4dcf Mon Sep 17 00:00:00 2001 From: thsrite Date: Thu, 3 Aug 2023 16:30:31 +0800 Subject: [PATCH] =?UTF-8?q?feat=20=E8=87=AA=E5=AE=9A=E4=B9=89=E7=94=B5?= =?UTF-8?q?=E5=BD=B1=E7=94=B5=E8=A7=86=E5=89=A7=E5=AA=92=E4=BD=93=E5=BA=93?= =?UTF-8?q?=E7=9B=AE=E5=BD=95=E5=90=8D=EF=BC=8C=E4=B8=8D=E5=A1=AB=E9=BB=98?= =?UTF-8?q?=E8=AE=A4=E7=94=B5=E5=BD=B1|=E7=94=B5=E8=A7=86=E5=89=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 2 ++ app/core/config.py | 4 ++++ app/modules/filetransfer/__init__.py | 15 +++++++++++++-- 3 files changed, 19 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index d598b0b8..8665d47a 100644 --- a/README.md +++ b/README.md @@ -58,6 +58,8 @@ docker pull jxxghp/moviepilot:latest - **DOWNLOAD_CATEGORY:** 下载二级分类开关,`true`/`false`,默认`false`,开启后会根据配置`category.yaml`自动在下载目录下建立二级目录分类 - **TORRENT_TAG:** 种子标签,默认为`MOVIEPILOT`,设置后只有MoviePilot添加的下载才会处理,留空所有下载器中的任务均会处理 - **LIBRARY_PATH:** 媒体库目录,多个目录使用`,`分隔 +- **LIBRARY_MOVIE_NAME:** 电影媒体库目录名,默认`电影` +- **LIBRARY_TV_NAME:** 电视剧媒体库目录名,默认`电影剧` - **LIBRARY_CATEGORY:** 媒体库二级分类开关,`true`/`false`,默认`false`,开启后会根据配置`category.yaml`自动在媒体库目录下建立二级目录分类 - **TRANSFER_TYPE:** 转移方式,支持`link`/`copy`/`move`/`softlink` - **COOKIECLOUD_HOST:** CookieCloud服务器地址,格式:`http://ip:port`,必须配置,否则无法添加站点 diff --git a/app/core/config.py b/app/core/config.py index d53f0f0a..716523b2 100644 --- a/app/core/config.py +++ b/app/core/config.py @@ -145,6 +145,10 @@ class Settings(BaseSettings): USER_AGENT = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36 Edg/113.0.1774.57" # 媒体库目录 LIBRARY_PATH: str = None + # 电影媒体库目录名,默认"电影" + LIBRARY_MOVIE_NAME: str = None + # 电视剧媒体库目录名,默认"电视剧" + LIBRARY_TV_NAME: str = None # 二级分类 LIBRARY_CATEGORY: bool = True # 电影重命名格式 diff --git a/app/modules/filetransfer/__init__.py b/app/modules/filetransfer/__init__.py index 8443c395..f7895b56 100644 --- a/app/modules/filetransfer/__init__.py +++ b/app/modules/filetransfer/__init__.py @@ -349,8 +349,19 @@ class FileTransferModule(_ModuleBase): if not target_dir.exists(): return f"{target_dir} 目标路径不存在" - # 目的目录加上类型和二级分类 - target_dir = target_dir / mediainfo.type.value / mediainfo.category + if mediainfo.type == MediaType.MOVIE: + if settings.LIBRARY_MOVIE_NAME: + target_dir = target_dir / settings.LIBRARY_MOVIE_NAME / mediainfo.category + else: + # 目的目录加上类型和二级分类 + target_dir = target_dir / mediainfo.type.value / mediainfo.category + + if mediainfo.type == MediaType.TV: + if settings.LIBRARY_TV_NAME: + target_dir = target_dir / settings.LIBRARY_TV_NAME / mediainfo.category + else: + # 目的目录加上类型和二级分类 + target_dir = target_dir / mediainfo.type.value / mediainfo.category # 重命名格式 rename_format = settings.TV_RENAME_FORMAT \