diff --git a/AutoBangumi/app/argument_parser.py b/AutoBangumi/app/argument_parser.py index 8e4b15c9..a917bf4b 100644 --- a/AutoBangumi/app/argument_parser.py +++ b/AutoBangumi/app/argument_parser.py @@ -11,5 +11,5 @@ def parse(): 无需二次刮削。""", ) - parser.add_argument("-d", "--debug",action="store_true", help="debug mode") + parser.add_argument("-d", "--debug", action="store_true", help="debug mode") return parser.parse_args() diff --git a/AutoBangumi/app/parser/parser.py b/AutoBangumi/app/parser/parser.py index c2533784..bab0d875 100644 --- a/AutoBangumi/app/parser/parser.py +++ b/AutoBangumi/app/parser/parser.py @@ -1,8 +1,5 @@ import re -from conf import settings -from utils import json_config import requests -from log import logger @@ -22,26 +19,38 @@ class Parser: logger.exception(e) json_config.save(settings.rule_path, self.rules) + # 第一类字幕组分类 def parser_type_1(self): - - self.name = "name" - self.season = "S01" - self.episode = 1 - self.dpi = "1080p" - self.language = "CHT" - + name_re_group = re.sub(r"^[^]]*]", "", self.raw_name).strip() + match_obj = re.match(r"(.*|\[.*\])( - \d{1,3}|\[d{1,3}])(.*)", name_re_group) + name_season = match_obj.group(1).strip() + if re.search(r"S\d{1,2}", name_season) is not None: + split = re.sub(r"S\d{1,2}", "", name_season).split("/") + self.season = re.findall(r"S\d{1,2}", name_season)[0] + else: + split = name_season.split("/") + self.season = "S01" + try: + self.name = split[1].strip() + except IndexError: + self.name = split[-1].strip() + self.episode = int(match_obj.group(2).replace("-", "").strip()) + other = match_obj.group(3).strip() + language = None def parser_type_2(self): self.name = "name" + def parser_type_3(self): + self.name = "name" + def method(self, method): if method == 1: self.parser_type_1() elif method == 2: self.parser_type_2() elif method == 3: - - + self.parser_type_3() def split_info(self): break_flag = False diff --git a/AutoBangumi/app/set_rule.py b/AutoBangumi/app/set_rule.py index da4cf712..ab28bf63 100644 --- a/AutoBangumi/app/set_rule.py +++ b/AutoBangumi/app/set_rule.py @@ -1,6 +1,5 @@ import re import logging -import json import os from downloader import getClient