mirror of
https://github.com/EstrellaXD/Auto_Bangumi.git
synced 2026-04-13 18:11:03 +08:00
2.5.2
This commit is contained in:
@@ -41,7 +41,10 @@ class Renamer:
|
||||
logger.debug("No Season info")
|
||||
season = 1
|
||||
folder_name = path_parts[1] if path_parts[0] == "/" else path_parts[0]
|
||||
download_path = path_parts[1]
|
||||
try:
|
||||
download_path = path_parts[1]
|
||||
except IndexError:
|
||||
download_path = ""
|
||||
return path_name, season, folder_name, download_path
|
||||
|
||||
def run(self):
|
||||
|
||||
@@ -132,5 +132,5 @@ class RawParser:
|
||||
|
||||
if __name__ == "__main__":
|
||||
test = RawParser()
|
||||
ep = test.analyse("【幻樱字幕组】【4月新番】【古见同学有交流障碍症 第二季 Komi-san wa, Komyushou Desu. S02】【22】【GB_MP4】【1920X1080】")
|
||||
print(ep.season_info.raw)
|
||||
ep = test.analyse("[Nekomoe kissaten] Komi-san wa, Komyushou Desu. 02 [WebRip 1080p HEVC-10bit AAC ASSx2]")
|
||||
print(ep.title)
|
||||
|
||||
@@ -2,6 +2,7 @@ import re
|
||||
import logging
|
||||
from os import path
|
||||
|
||||
# from .raw_parser import RawParser
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
@@ -9,13 +10,11 @@ logger = logging.getLogger(__name__)
|
||||
class DownloadParser:
|
||||
def __init__(self):
|
||||
self.rules = [
|
||||
r"(.*)\[(\d{1,3}|\d{1,3}\.\d{1,2})(?:v\d{1,2})?(?:END)?\](.*)",
|
||||
r"(.*)\[E(\d{1,3}|\d{1,3}\.\d{1,2})(?:v\d{1,2})?(?:END)?\](.*)",
|
||||
r"(.*)(?: -)[\[ E](\d{1,3}|\d{1,3}\.\d{1,2})(?:v\d{1,2})?(?: )?(?:END)?[\] ](.*)",
|
||||
r"(.*)\[第(\d*\.*\d*)话(?:END)?\](.*)",
|
||||
r"(.*)\[第(\d*\.*\d*)話(?:END)?\](.*)",
|
||||
r"(.*)第(\d*\.*\d*)话(?:END)?(.*)",
|
||||
r"(.*)第(\d*\.*\d*)話(?:END)?(.*)",
|
||||
r"(.*)- (\d{1,3}|\d{1,3}\.\d{1,2})(?:v\d{1,2})?(?:END)?(.*)",
|
||||
]
|
||||
|
||||
def rename_normal(self, name, season):
|
||||
@@ -57,6 +56,20 @@ class DownloadParser:
|
||||
)
|
||||
return new_name
|
||||
|
||||
def rename_no_season_pn(self, name):
|
||||
n = re.split(r"[\[\]()【】()]", name)
|
||||
file_name = name.replace(f"[{n[1]}]", "")
|
||||
for rule in self.rules:
|
||||
match_obj = re.match(rule, file_name, re.I)
|
||||
if match_obj is not None:
|
||||
title = match_obj.group(1).strip()
|
||||
new_name = re.sub(
|
||||
r"[\[\]]",
|
||||
"",
|
||||
f"{title} E{match_obj.group(2)}{path.splitext(name)[-1]}",
|
||||
)
|
||||
return new_name
|
||||
|
||||
def download_rename(self, name, folder_name, season, method):
|
||||
if method.lower() == "pn":
|
||||
return self.rename_pn(name, season)
|
||||
@@ -66,10 +79,12 @@ class DownloadParser:
|
||||
return name
|
||||
elif method.lower() == "advance":
|
||||
return self.rename_advance(name, folder_name, season)
|
||||
elif method.lower() == "no_season_pn":
|
||||
return self.rename_no_season_pn(name)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
name = "[NC-Raws]Summer Time Rendering S02 - 09(B-Global 3840x2160 HEVC AAC MKV).mkv"
|
||||
name = "[Nekomoe kissaten] Komi-san wa, Komyushou Desu. S02 - 02 [WebRip 1080p HEVC-10bit AAC ASSx2].mkv"
|
||||
rename = DownloadParser()
|
||||
new_name = rename.rename_pn(name, 1)
|
||||
print(new_name)
|
||||
@@ -1,11 +1,11 @@
|
||||
qbittorrent-api
|
||||
bs4~=4.11.1
|
||||
bs4
|
||||
requests==2.28.0
|
||||
pysocks
|
||||
lxml
|
||||
|
||||
setuptools~=62.1.0
|
||||
fastapi~=0.78.0
|
||||
fastapi
|
||||
uvicorn~=0.17.6
|
||||
jinja2
|
||||
pydantic~=1.9.1
|
||||
Reference in New Issue
Block a user