mirror of
https://github.com/EstrellaXD/Auto_Bangumi.git
synced 2026-05-04 19:01:16 +08:00
Update notification
This commit is contained in:
@@ -15,15 +15,6 @@ router = FastAPI()
|
||||
api_func = APIProcess(settings)
|
||||
|
||||
|
||||
@router.on_event("startup")
|
||||
async def startup_event():
|
||||
logger = logging.getLogger("uvicorn.access")
|
||||
handler = logging.StreamHandler()
|
||||
handler.setLevel(logging.INFO)
|
||||
handler.setFormatter(logging.Formatter("[%(asctime)s] %(levelname)-8s %(message)s"))
|
||||
logger.addHandler(handler)
|
||||
|
||||
|
||||
@router.get("/api/v1/data", tags=["info"])
|
||||
async def get_data():
|
||||
try:
|
||||
|
||||
@@ -47,7 +47,7 @@ class Renamer:
|
||||
torrent_name = info.name
|
||||
suffix = os.path.splitext(media_path)[-1]
|
||||
compare_name = self.get_file_name(media_path)
|
||||
new_path = self._renamer.torrent_parser(
|
||||
new_path, episode = self._renamer.torrent_parser(
|
||||
torrent_name=torrent_name,
|
||||
bangumi_name=bangumi_name,
|
||||
season=season,
|
||||
@@ -57,7 +57,7 @@ class Renamer:
|
||||
if compare_name != new_path:
|
||||
try:
|
||||
self._client.rename_torrent_file(_hash=info.hash, old_path=media_path, new_path=new_path)
|
||||
self._notification.send_msg(bangumi_name, "最新剧集已经更新,已自动重命名。")
|
||||
self._notification.send_msg(bangumi_name, f"第{episode}集已经更新,已自动重命名。")
|
||||
except Exception as e:
|
||||
logger.warning(f"{torrent_name} rename failed")
|
||||
logger.warning(f"Season name: {bangumi_name}, Season: {season}, Suffix: {suffix}")
|
||||
@@ -72,7 +72,7 @@ class Renamer:
|
||||
if path_len <= 2:
|
||||
suffix = os.path.splitext(media_path)[-1]
|
||||
torrent_name = self.get_file_name(media_path)
|
||||
new_name = self._renamer.torrent_parser(
|
||||
new_name, episode = self._renamer.torrent_parser(
|
||||
torrent_name=torrent_name,
|
||||
bangumi_name=bangumi_name,
|
||||
season=season,
|
||||
|
||||
@@ -44,9 +44,10 @@ def rename_normal(info: DownloadInfo):
|
||||
for rule in RULES:
|
||||
match_obj = re.match(rule, info.name, re.I)
|
||||
if match_obj is not None:
|
||||
episode = match_obj.group(2)
|
||||
title = re.sub(r"([Ss]|Season )\d{1,3}", "", match_obj.group(1)).strip()
|
||||
new_name = f"{title} S{info.season}E{match_obj.group(2)}{match_obj.group(3)}"
|
||||
return new_name
|
||||
new_name = f"{title} S{info.season}E{episode}{match_obj.group(3)}"
|
||||
return new_name, episode
|
||||
|
||||
|
||||
def rename_pn(info: DownloadInfo):
|
||||
@@ -55,24 +56,26 @@ def rename_pn(info: DownloadInfo):
|
||||
if match_obj is not None:
|
||||
title = re.sub(r"([Ss]|Season )\d{1,3}", "", match_obj.group(1)).strip()
|
||||
title = title if title != "" else info.folder_name
|
||||
episode = match_obj.group(2)
|
||||
new_name = re.sub(
|
||||
r"[\[\]]",
|
||||
"",
|
||||
f"{title} S{info.season}E{match_obj.group(2)}{info.suffix}",
|
||||
f"{title} S{info.season}E{episode}{info.suffix}",
|
||||
)
|
||||
return new_name
|
||||
return new_name, episode
|
||||
|
||||
|
||||
def rename_advance(info: DownloadInfo):
|
||||
for rule in RULES:
|
||||
match_obj = re.match(rule, info.file_name, re.I)
|
||||
if match_obj is not None:
|
||||
episode = match_obj.group(2)
|
||||
new_name = re.sub(
|
||||
r"[\[\]]",
|
||||
"",
|
||||
f"{info.folder_name} S{info.season}E{match_obj.group(2)}{info.suffix}",
|
||||
f"{info.folder_name} S{info.season}E{episode}{info.suffix}",
|
||||
)
|
||||
return new_name
|
||||
return new_name, episode
|
||||
|
||||
|
||||
def rename_no_season_pn(info: DownloadInfo):
|
||||
@@ -80,12 +83,13 @@ def rename_no_season_pn(info: DownloadInfo):
|
||||
match_obj = re.match(rule, info.file_name, re.I)
|
||||
if match_obj is not None:
|
||||
title = match_obj.group(1).strip()
|
||||
episode = match_obj.group(2)
|
||||
new_name = re.sub(
|
||||
r"[\[\]]",
|
||||
"",
|
||||
f"{title} E{match_obj.group(2)}{info.suffix}",
|
||||
f"{title} E{episode}{info.suffix}",
|
||||
)
|
||||
return new_name
|
||||
return new_name, episode
|
||||
|
||||
|
||||
def rename_none(info: DownloadInfo):
|
||||
|
||||
Reference in New Issue
Block a user