feat: 添加自定义正则 & 番号大写转换配置
This commit is contained in:
@@ -53,6 +53,9 @@ naming_rule = number+'-'+title
|
|||||||
max_title_len = 50
|
max_title_len = 50
|
||||||
; 刮削后图片是否命名为番号
|
; 刮削后图片是否命名为番号
|
||||||
image_naming_with_number = 0
|
image_naming_with_number = 0
|
||||||
|
; 番号大写(仅在写入文件时变大写, 搜索时不影响)
|
||||||
|
number_uppercase = 0
|
||||||
|
number_regexs =
|
||||||
|
|
||||||
[update]
|
[update]
|
||||||
update_check = 1
|
update_check = 1
|
||||||
|
|||||||
14
config.py
14
config.py
@@ -343,6 +343,18 @@ class Config:
|
|||||||
except:
|
except:
|
||||||
return False
|
return False
|
||||||
|
|
||||||
|
def number_uppercase(self) -> bool:
|
||||||
|
try:
|
||||||
|
return self.conf.getboolean("Name_Rule", "number_uppercase")
|
||||||
|
except:
|
||||||
|
return False
|
||||||
|
|
||||||
|
def number_regexs(self) -> list[str]:
|
||||||
|
try:
|
||||||
|
return self.conf.get("Name_Rule", "number_regexs").split()
|
||||||
|
except:
|
||||||
|
return []
|
||||||
|
|
||||||
def update_check(self) -> bool:
|
def update_check(self) -> bool:
|
||||||
try:
|
try:
|
||||||
return self.conf.getboolean("update", "update_check")
|
return self.conf.getboolean("update", "update_check")
|
||||||
@@ -473,6 +485,8 @@ class Config:
|
|||||||
conf.set(sec4, "naming_rule", "number + '-' + title")
|
conf.set(sec4, "naming_rule", "number + '-' + title")
|
||||||
conf.set(sec4, "max_title_len", "50")
|
conf.set(sec4, "max_title_len", "50")
|
||||||
conf.set(sec4, "image_naming_with_number", "0")
|
conf.set(sec4, "image_naming_with_number", "0")
|
||||||
|
conf.set(sec4, "number_uppercase", "0")
|
||||||
|
conf.set(sec4, "number_regexs", [])
|
||||||
|
|
||||||
sec5 = "update"
|
sec5 = "update"
|
||||||
conf.add_section(sec5)
|
conf.add_section(sec5)
|
||||||
|
|||||||
@@ -40,6 +40,11 @@ def get_number(debug: bool, file_path: str) -> str:
|
|||||||
filepath = os.path.basename(file_path)
|
filepath = os.path.basename(file_path)
|
||||||
# debug True 和 False 两块代码块合并,原因是此模块及函数只涉及字符串计算,没有IO操作,debug on时输出导致异常信息即可
|
# debug True 和 False 两块代码块合并,原因是此模块及函数只涉及字符串计算,没有IO操作,debug on时输出导致异常信息即可
|
||||||
try:
|
try:
|
||||||
|
# 先对自定义正则进行匹配
|
||||||
|
if config.getInstance().number_regexs():
|
||||||
|
for regex in config.getInstance().number_regexs():
|
||||||
|
if re.search(regex, filepath):
|
||||||
|
return re.search(regex, filepath).group()
|
||||||
file_number = get_number_by_dict(filepath)
|
file_number = get_number_by_dict(filepath)
|
||||||
if file_number:
|
if file_number:
|
||||||
return file_number
|
return file_number
|
||||||
|
|||||||
@@ -120,6 +120,10 @@ def get_data_from_json(
|
|||||||
series = json_data.get('series')
|
series = json_data.get('series')
|
||||||
year = json_data.get('year')
|
year = json_data.get('year')
|
||||||
|
|
||||||
|
|
||||||
|
if conf.number_uppercase():
|
||||||
|
number = number.upper()
|
||||||
|
|
||||||
if json_data.get('cover_small'):
|
if json_data.get('cover_small'):
|
||||||
cover_small = json_data.get('cover_small')
|
cover_small = json_data.get('cover_small')
|
||||||
else:
|
else:
|
||||||
|
|||||||
Reference in New Issue
Block a user