Fix translate list

This commit is contained in:
yoshiko2
2023-05-05 04:49:21 +08:00
parent 76a80ab488
commit 96f1f3d3c5
3 changed files with 20 additions and 14 deletions

View File

@@ -314,7 +314,7 @@ def translate(
"""
trans_result = ""
# 中文句子如果包含&等符号会被谷歌翻译截断损失内容,而且中文翻译到中文也没有意义,故而忽略,只翻译带有日语假名的
if not is_japanese(src):
if (is_japanese(src) == False) and ("zh_" in target_language):
return src
if engine == "google-free":
gsite = config.getInstance().get_translate_service_site()

View File

@@ -67,32 +67,30 @@ folders = failed,JAV_output
[debug_mode]
switch = 0
; 机器翻译
[translate]
switch = 0
;可选项 google-free,azure,deeplx
; engine: google-free,azure,deeplx
engine = google-free
; en_us fr_fr de_de... (only google-free now)
target_language = zh_cn
; azure翻译密钥key
; Azure translate API key
key =
; 翻译延迟
delay = 1
; Translate delay
delay = 3
; title,outline,actor,tag
values = title,outline
; google翻译服务站点或deeplx访问链接
; Google translate site, or Deeplx site
service_site = translate.google.com
; 预告片
[trailer]
switch = 0
; 用来确定是否是无码
[uncensored]
uncensored_prefix = PT-,S2M,BT,LAF,SMD,SMBD,SM3D2DBD,SKY-,SKYHD,CWP,CWDV,CWBD,CW3D2DBD,MKD,MKBD,MXBD,MK3D2DBD,MCB3DBD,MCBD,RHJ,MMDV
[media]
; 影片后缀
media_type = .mp4,.avi,.rmvb,.wmv,.mov,.mkv,.flv,.ts,.webm,.iso,.mpg,.m4v
; 字幕后缀
sub_type = .smi,.srt,.idx,.sub,.sup,.psb,.ssa,.ass,.usf,.xss,.ssf,.rt,.lrc,.sbv,.vtt,.ttml
; 水印

View File

@@ -200,9 +200,16 @@ def get_data_from_json(
key=conf.get_translate_key(),
)
else:
t = translate(json_data[translate_value])
if len(t):
json_data[translate_value] = special_characters_replacement(t)
if len(json_data[translate_value]):
if type(json_data[translate_value]) == str:
json_data[translate_value] = special_characters_replacement(json_data[translate_value])
json_data[translate_value] = translate(json_data[translate_value])
else:
for i in range(len(json_data[translate_value])):
json_data[translate_value][i] = special_characters_replacement(
json_data[translate_value][i])
list_in_str = ",".join(json_data[translate_value])
json_data[translate_value] = translate(list_in_str).split(',')
if open_cc:
cc_vars = conf.cc_convert_vars().split(",")
@@ -303,5 +310,6 @@ def special_characters_replacement(text) -> str:
replace('‘', ''). # U+02018 LEFT SINGLE QUOTATION MARK
replace('’', ''). # U+02019 RIGHT SINGLE QUOTATION MARK
replace('…', '').
replace('&', '')
replace('&', '').
replace("&", '')
)