fix: create temp directory for subtitle API downloads

This commit is contained in:
jxxghp
2026-06-10 07:07:33 +08:00
parent c4602070b1
commit 829d7944b0
4 changed files with 93 additions and 109 deletions

View File

@@ -202,18 +202,25 @@ class SubtitleModule(_ModuleBase):
fileURI = FileURI.from_uri(download_dir.as_posix())
storage = fileURI.storage
download_dir = Path(fileURI.path)
target_dir = download_dir / folder_name if folder_name else download_dir
for _ in range(30):
found = storageChain.get_file_item(storage, target_dir)
found = storageChain.get_file_item(storage, download_dir / folder_name)
if found:
working_dir_item = found
break
time.sleep(1)
# 下载器可能还未创建保存目录,字幕保存前需要按完整目标路径补齐目录
# 目录仍然不存在,且有文件夹名,则创建目录
if not working_dir_item and folder_name:
parent_dir_item = storageChain.get_folder(storage, download_dir)
if parent_dir_item:
working_dir_item = storageChain.create_folder(
parent_dir_item,
folder_name
)
else:
logger.error(f"下载根目录不存在,无法创建字幕文件夹:{download_dir}")
return
if not working_dir_item:
working_dir_item = storageChain.get_folder(storage, target_dir)
if not working_dir_item:
logger.error(f"下载目录不存在,无法保存字幕:{target_dir}")
logger.error(f"下载目录不存在,无法保存字幕:{download_dir / folder_name}")
return
# 读取网站代码
sublink_list = self._get_subtitle_links(torrent)