mirror of
https://github.com/EstrellaXD/Auto_Bangumi.git
synced 2026-04-24 10:31:09 +08:00
Add advance to subtitle rename
This commit is contained in:
@@ -95,13 +95,15 @@ class Renamer:
|
||||
subtitle_list: list[str],
|
||||
bangumi_name: str,
|
||||
season: int,
|
||||
method: str,
|
||||
_hash
|
||||
):
|
||||
method = "subtitle_" + method
|
||||
for subtitle_path in subtitle_list:
|
||||
suffix = os.path.splitext(subtitle_path)[-1]
|
||||
old_name = self.get_file_name(subtitle_path)
|
||||
new_name = self._renamer.torrent_parser(
|
||||
method="subtitle",
|
||||
method=method,
|
||||
torrent_name=old_name,
|
||||
bangumi_name=bangumi_name,
|
||||
season=season,
|
||||
@@ -175,6 +177,7 @@ class Renamer:
|
||||
subtitle_list=subtitle_list,
|
||||
bangumi_name=bangumi_name,
|
||||
season=season,
|
||||
method=rename_method,
|
||||
_hash=info.hash
|
||||
)
|
||||
elif len(media_list) > 1:
|
||||
@@ -191,17 +194,8 @@ class Renamer:
|
||||
subtitle_list=subtitle_list,
|
||||
bangumi_name=bangumi_name,
|
||||
season=season,
|
||||
method=rename_method,
|
||||
_hash=info.hash
|
||||
)
|
||||
else:
|
||||
logger.warning(f"{info.name} has no media file")
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
from module.conf import settings, setup_logger
|
||||
setup_logger()
|
||||
client = DownloadClient(settings)
|
||||
renamer = Renamer(client, settings)
|
||||
save_path = "D:\Videos\Bangumi\我推的孩子\Season 1\[XKsub][Oshi no Ko][01][CHS][1080P][WEBrip][MP4].mp4"
|
||||
path = renamer.get_file_name(save_path)
|
||||
print(path)
|
||||
@@ -116,13 +116,36 @@ def rename_subtitle(info: DownloadInfo):
|
||||
return new_name
|
||||
|
||||
|
||||
def rename_subtitle_advance(info: DownloadInfo):
|
||||
subtitle_lang = "zh"
|
||||
break_flag = False
|
||||
for key, value in SUBTITLE_LANG.items():
|
||||
for lang in value:
|
||||
if lang in info.name:
|
||||
subtitle_lang = key
|
||||
break_flag = True
|
||||
break
|
||||
if break_flag:
|
||||
break
|
||||
for rule in RULES:
|
||||
match_obj = re.match(rule, info.file_name, re.I)
|
||||
if match_obj is not None:
|
||||
new_name = re.sub(
|
||||
r"[\[\]]",
|
||||
"",
|
||||
f"{info.folder_name} S{info.season}E{match_obj.group(2)}.{subtitle_lang}{info.suffix}",
|
||||
)
|
||||
return new_name
|
||||
|
||||
|
||||
METHODS = {
|
||||
"normal": rename_normal,
|
||||
"pn": rename_pn,
|
||||
"advance": rename_advance,
|
||||
"no_season_pn": rename_no_season_pn,
|
||||
"none": rename_none,
|
||||
"subtitle": rename_subtitle,
|
||||
"subtitle_pn": rename_subtitle,
|
||||
"subtitle_advance": rename_subtitle_advance,
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user