From c8c02c4911bfca55c559e5971ead315a0a7a49f7 Mon Sep 17 00:00:00 2001 From: lededev Date: Fri, 7 May 2021 08:35:06 +0800 Subject: [PATCH 1/2] case insensitive strip, poco detect --- number_parser.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) mode change 100644 => 100755 number_parser.py diff --git a/number_parser.py b/number_parser.py old mode 100644 new mode 100755 index 7175d3d..8bb2923 --- a/number_parser.py +++ b/number_parser.py @@ -3,6 +3,8 @@ import re from core import * +G_spat = re.compile("(22-sht\.me|bbs2048@|-fhd|_fhd|fhd_|fhd-|-hd|_hd|hd_|hd-|-sd|_sd|-1080p|_1080p)", re.IGNORECASE) + def get_number(debug,filepath: str) -> str: # """ @@ -34,7 +36,7 @@ def get_number(debug,filepath: str) -> str: try: if '-' in filepath or '_' in filepath: # 普通提取番号 主要处理包含减号-和_的番号 #filepath = filepath.replace("_", "-") - filepath.strip('22-sht.me').strip('-HD').strip('-hd') + filepath = G_spat.sub("", filepath) filename = str(re.sub("\[\d{4}-\d{1,2}-\d{1,2}\] - ", "", filepath)) # 去除文件名中时间 lower_check = filename.lower() if 'fc2' in lower_check: @@ -44,7 +46,7 @@ def get_number(debug,filepath: str) -> str: file_number = re.search(r'(cz|k|n|red-|se)\d{3,4}', lower_check, re.A).group() elif "carib" in lower_check: file_number = str(re.search(r'\d{6}(-|_)\d{3}', lower_check, re.A).group()).replace('_', '-') - elif "1pon" in lower_check: + elif "1pon" in lower_check or "paco" in lower_check: file_number = str(re.search(r'\d{6}(-|_)\d{3}', lower_check, re.A).group()).replace('-', '_') elif "10mu" in lower_check: file_number = str(re.search(r'\d{6}(-|_)\d{2}', lower_check, re.A).group()).replace('-', '_') @@ -68,7 +70,7 @@ def get_number(debug,filepath: str) -> str: elif debug == True: if '-' in filepath or '_' in filepath: # 普通提取番号 主要处理包含减号-和_的番号 #filepath = filepath.replace("_", "-") - filepath.strip('22-sht.me').strip('-HD').strip('-hd') + filepath = G_spat.sub("", filepath) filename = str(re.sub("\[\d{4}-\d{1,2}-\d{1,2}\] - ", "", filepath)) # 去除文件名中时间 lower_check = filename.lower() if 'fc2' in lower_check: @@ -78,7 +80,7 @@ def get_number(debug,filepath: str) -> str: file_number = re.search(r'(cz|k|n|red-|se)\d{3,4}', lower_check, re.A).group() elif "carib" in lower_check: file_number = str(re.search(r'\d{6}(-|_)\d{3}', lower_check, re.A).group()).replace('_', '-') - elif "1pon" in lower_check: + elif "1pon" in lower_check or "paco" in lower_check: file_number = str(re.search(r'\d{6}(-|_)\d{3}', lower_check, re.A).group()).replace('-', '_') elif "10mu" in lower_check: file_number = str(re.search(r'\d{6}(-|_)\d{2}', lower_check, re.A).group()).replace('-', '_') From d9b936bf6290afbe31ab3cdd3fbfcbee9d766896 Mon Sep 17 00:00:00 2001 From: lededev Date: Fri, 7 May 2021 09:05:52 +0800 Subject: [PATCH 2/2] stricter conditions --- number_parser.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/number_parser.py b/number_parser.py index 8bb2923..da0a106 100755 --- a/number_parser.py +++ b/number_parser.py @@ -3,7 +3,9 @@ import re from core import * -G_spat = re.compile("(22-sht\.me|bbs2048@|-fhd|_fhd|fhd_|fhd-|-hd|_hd|hd_|hd-|-sd|_sd|-1080p|_1080p)", re.IGNORECASE) +G_spat = re.compile( + "(^22-sht\.me|-fhd|_fhd|^fhd_|^fhd-|-hd|_hd|^hd_|^hd-|-sd|_sd|-1080p|_1080p|-720p|_720p)", + re.IGNORECASE) def get_number(debug,filepath: str) -> str: