mirror of
https://github.com/Cp0204/quark-auto-save.git
synced 2026-01-16 01:10:44 +08:00
修复剧集命名模式重命名功能失效的问题
This commit is contained in:
parent
e7d8666dcb
commit
f7b3dc2c35
@ -1753,8 +1753,6 @@ class Quark:
|
|||||||
# 支持剧集命名模式
|
# 支持剧集命名模式
|
||||||
elif task.get("use_episode_naming") and task.get("episode_naming"):
|
elif task.get("use_episode_naming") and task.get("episode_naming"):
|
||||||
# 剧集命名模式下已经在do_save中打印了剧集命名信息,这里不再重复打印
|
# 剧集命名模式下已经在do_save中打印了剧集命名信息,这里不再重复打印
|
||||||
# 设置正则模式为空
|
|
||||||
task["regex_pattern"] = None
|
|
||||||
# 构建剧集命名的正则表达式
|
# 构建剧集命名的正则表达式
|
||||||
episode_pattern = task["episode_naming"]
|
episode_pattern = task["episode_naming"]
|
||||||
# 先检查是否包含合法的[]字符
|
# 先检查是否包含合法的[]字符
|
||||||
@ -3044,7 +3042,6 @@ class Quark:
|
|||||||
|
|
||||||
dir_file_list = self.ls_dir(self.savepath_fid[savepath])
|
dir_file_list = self.ls_dir(self.savepath_fid[savepath])
|
||||||
|
|
||||||
|
|
||||||
# 构建目标目录中所有文件的查重索引(按大小和修改时间)
|
# 构建目标目录中所有文件的查重索引(按大小和修改时间)
|
||||||
dir_files_map = {}
|
dir_files_map = {}
|
||||||
for dir_file in dir_file_list:
|
for dir_file in dir_file_list:
|
||||||
@ -3070,19 +3067,12 @@ class Quark:
|
|||||||
# 找出已命名的文件列表,避免重复转存
|
# 找出已命名的文件列表,避免重复转存
|
||||||
existing_episode_numbers = set()
|
existing_episode_numbers = set()
|
||||||
for dir_file in dir_file_list:
|
for dir_file in dir_file_list:
|
||||||
if not dir_file["dir"] and regex_pattern:
|
if not dir_file["dir"]:
|
||||||
try:
|
try:
|
||||||
if regex_pattern == "SPECIAL_EPISODE_PATTERN":
|
# 对于剧集命名模式,直接使用extract_episode_number函数提取剧集号
|
||||||
# 对于特殊模式,使用extract_episode_number函数提取剧集号
|
episode_num = extract_episode_number_local(dir_file["file_name"])
|
||||||
episode_num = extract_episode_number_local(dir_file["file_name"])
|
if episode_num is not None:
|
||||||
if episode_num is not None:
|
existing_episode_numbers.add(episode_num)
|
||||||
existing_episode_numbers.add(episode_num)
|
|
||||||
else:
|
|
||||||
# 使用常规正则表达式匹配
|
|
||||||
matches = re.match(regex_pattern, dir_file["file_name"])
|
|
||||||
if matches:
|
|
||||||
episode_num = int(matches.group(1))
|
|
||||||
existing_episode_numbers.add(episode_num)
|
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
@ -3421,23 +3411,21 @@ class Quark:
|
|||||||
error_log = f"重命名: {dir_file['file_name']} → {target_name} 失败,{rename_result['message']}"
|
error_log = f"重命名: {dir_file['file_name']} → {target_name} 失败,{rename_result['message']}"
|
||||||
rename_logs.append(error_log)
|
rename_logs.append(error_log)
|
||||||
|
|
||||||
# 返回重命名日志和成功标志
|
# 不要立即返回,继续执行本地文件重命名逻辑
|
||||||
return True, rename_logs
|
# 更新dir_file_list以包含新转存的文件
|
||||||
|
dir_file_list = self.ls_dir(self.savepath_fid[savepath])
|
||||||
else:
|
else:
|
||||||
err_msg = query_task_return["message"]
|
err_msg = query_task_return["message"]
|
||||||
add_notify(f"❌《{task['taskname']}》转存失败: {err_msg}\n")
|
add_notify(f"❌《{task['taskname']}》转存失败: {err_msg}\n")
|
||||||
return False, []
|
|
||||||
else:
|
else:
|
||||||
print(f"❌ 保存文件失败: {save_file_return['message']}")
|
print(f"❌ 保存文件失败: {save_file_return['message']}")
|
||||||
add_notify(f"❌《{task['taskname']}》转存失败: {save_file_return['message']}\n")
|
add_notify(f"❌《{task['taskname']}》转存失败: {save_file_return['message']}\n")
|
||||||
return False, []
|
|
||||||
else:
|
else:
|
||||||
# print("没有需要保存的新文件")
|
# print("没有需要保存的新文件")
|
||||||
return False, []
|
pass
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
print(f"处理分享链接时发生错误: {str(e)}")
|
print(f"处理分享链接时发生错误: {str(e)}")
|
||||||
add_notify(f"❌《{task['taskname']}》处理分享链接时发生错误: {str(e)}\n")
|
add_notify(f"❌《{task['taskname']}》处理分享链接时发生错误: {str(e)}\n")
|
||||||
return False, []
|
|
||||||
|
|
||||||
# 对本地已有文件进行重命名(即使没有分享链接或处理失败也执行)
|
# 对本地已有文件进行重命名(即使没有分享链接或处理失败也执行)
|
||||||
is_rename_count = 0
|
is_rename_count = 0
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user