diff --git a/source/application/app.py b/source/application/app.py index 6165965..b8580d0 100644 --- a/source/application/app.py +++ b/source/application/app.py @@ -137,6 +137,7 @@ class XHS: author_archive, write_mtime, _print, + self.CLEANER, ) self.mapping_data = mapping_data or {} self.map_recorder = MapRecorder( diff --git a/source/module/manager.py b/source/module/manager.py index 70b27ac..6d53154 100644 --- a/source/module/manager.py +++ b/source/module/manager.py @@ -16,6 +16,10 @@ from source.expansion import remove_empty_directories from ..translation import _ from .static import HEADERS, USERAGENT, WARNING from .tools import logging +from typing import TYPE_CHECKING + +if TYPE_CHECKING: + from ..expansion import Cleaner __all__ = ["Manager"] @@ -67,8 +71,10 @@ class Manager: author_archive: bool, write_mtime: bool, _print: bool, + cleaner: "Cleaner", ): self.root = root + self.cleaner = cleaner self.temp = root.joinpath("Temp") self.path = self.__check_path(path) self.folder = self.__check_folder(folder) @@ -130,8 +136,8 @@ class Manager: return r if (r := self.__check_root_again(r)) else self.root def __check_folder(self, folder: str) -> Path: - # TODO: 待实现 - return self.path.joinpath(folder or "Download") + folder = self.cleaner.filter_name(folder, default="Download") + return self.path.joinpath(folder) @staticmethod def __check_root_again(root: Path) -> bool | Path: diff --git a/static/Release_Notes.md b/static/Release_Notes.md index 5ad24c8..42d69e9 100644 --- a/static/Release_Notes.md +++ b/static/Release_Notes.md @@ -3,14 +3,15 @@ 1. 修复作品类型判断失败时异常退出的问题 2. 修改服务器模式请求路径为 `/xhs/detail` 3. 修改服务器模式默认端口为 `5556` -4. 服务器模式新增 MCP 模式 -5. 配置与文件归集到单文件夹 -6. 优化配置文件参数容错机制 -7. 优化提取链接的正则表达式 -8. 修改服务器模式启动命令 -9. 支持更多作品链接格式 -10. 支持音乐图集作品下载 -11. 其他细节优化 +4. 新增 `folder_name` 参数检查 +5. 服务器模式新增 MCP 模式 +6. 配置与文件归集到单文件夹 +7. 优化配置文件参数容错机制 +8. 优化提取链接的正则表达式 +9. 修改服务器模式启动命令 +10. 支持更多作品链接格式 +11. 支持音乐图集作品下载 +12. 其他细节优化 *****