剧情简介:增加功能启用开关,因质量airavwiki取繁体简介
This commit is contained in:
@@ -314,4 +314,6 @@ def special_characters_replacement(text) -> str:
|
||||
replace('|', 'ǀ'). # U+01C0 LATIN LETTER DENTAL CLICK @ Basic Multilingual Plane
|
||||
replace('‘', '‘'). # U+02018 LEFT SINGLE QUOTATION MARK
|
||||
replace('’', '’'). # U+02019 RIGHT SINGLE QUOTATION MARK
|
||||
replace('&', '&'))
|
||||
replace('&', '&').
|
||||
replace('…','…')
|
||||
)
|
||||
|
||||
@@ -27,6 +27,8 @@ class noThread(object):
|
||||
def getStoryline(number, title, sites: list=None):
|
||||
start_time = time.time()
|
||||
conf = config.getInstance()
|
||||
if not conf.is_storyline():
|
||||
return ''
|
||||
debug = conf.debug() or conf.storyline_show() == 2
|
||||
storyine_sites = conf.storyline_site().split(',') if sites is None else sites
|
||||
if is_uncensored(number):
|
||||
@@ -137,7 +139,7 @@ def getStoryline_airav(number, debug):
|
||||
def getStoryline_airavwiki(number, debug):
|
||||
try:
|
||||
kwd = number[:6] if re.match(r'\d{6}[\-_]\d{2,3}', number) else number
|
||||
url = f'https://www.airav.wiki/api/video/list?barcode=GZAP-055&lang=zh-TW&search={kwd}&lng=zh-CN'
|
||||
url = f'https://www.airav.wiki/api/video/list?lang=zh-TW&lng=zh-TW&search={kwd}'
|
||||
result, browser = get_html_by_browser(url, return_type='browser')
|
||||
if not result.ok:
|
||||
raise ValueError(f"get_html_by_browser('{url}','{number}') failed")
|
||||
@@ -148,7 +150,7 @@ def getStoryline_airavwiki(number, debug):
|
||||
for r in j["result"]:
|
||||
n = r['barcode']
|
||||
if re.search(number, n, re.I):
|
||||
link = f'/api/video/barcode/{n}?lng=zh-CN'
|
||||
link = f'/api/video/barcode/{n}?lng=zh-TW'
|
||||
break
|
||||
if link is None:
|
||||
raise ValueError("number not found")
|
||||
@@ -163,6 +165,7 @@ def getStoryline_airavwiki(number, debug):
|
||||
raise ValueError("detail page number not match, got ->[{detail_number}]")
|
||||
desc = j["result"]['description']
|
||||
return desc
|
||||
|
||||
except Exception as e:
|
||||
if debug:
|
||||
print(f"[-]MP def getStoryline_airavwiki Error: {e}, number [{number}].")
|
||||
@@ -196,11 +199,11 @@ def getStoryline_58avgo(number, debug):
|
||||
result = browser.follow_link(link)
|
||||
if not result.ok or 'playon.aspx' not in browser.url:
|
||||
raise ValueError("detail page not found")
|
||||
title = browser.page.select('head > title')[0].text.strip()
|
||||
title = browser.page.select_one('head > title').text.strip()
|
||||
detail_number = str(re.findall('\[(.*?)]', title)[0])
|
||||
if not re.search(number, detail_number, re.I):
|
||||
raise ValueError("detail page number not match, got ->[{detail_number}]")
|
||||
return browser.page.select('#ContentPlaceHolder1_Label2')[0].text.strip()
|
||||
return browser.page.select_one('#ContentPlaceHolder1_Label2').text.strip()
|
||||
except Exception as e:
|
||||
if debug:
|
||||
print(f"[-]MP getOutline_58avgo Error: {e}, number [{number}].")
|
||||
|
||||
@@ -83,12 +83,13 @@ water=2
|
||||
|
||||
; 剧照
|
||||
[extrafanart]
|
||||
switch=0
|
||||
switch=1
|
||||
parallel_download=5
|
||||
extrafanart_folder=extrafanart
|
||||
|
||||
; 剧情简介
|
||||
[storyline]
|
||||
switch=1
|
||||
; website为javbus javdb avsox xcity carib时,site censored_site uncensored_site 为获取剧情简介信息的
|
||||
; 可选数据源站点列表。列表内站点同时并发查询,取值优先级由冒号前的序号决定,从小到大,数字小的站点没数据才会采用后面站点获得的。
|
||||
; 其中airavwiki airav avno1 58avgo是中文剧情简介,区别是airav只能查有码,avno1 airavwiki 有码无码都能查,
|
||||
|
||||
19
config.py
19
config.py
@@ -246,23 +246,29 @@ class Config:
|
||||
def debug(self) -> bool:
|
||||
return self.getboolean_override("debug_mode", "switch")
|
||||
|
||||
def is_storyline(self) -> bool:
|
||||
try:
|
||||
return self.conf.getboolean("storyline", "switch")
|
||||
except:
|
||||
return True
|
||||
|
||||
def storyline_site(self) -> str:
|
||||
try:
|
||||
return self.conf.get("storyline", "site")
|
||||
except:
|
||||
return "avno1"
|
||||
return "1:avno1,4:airavwiki"
|
||||
|
||||
def storyline_censored_site(self) -> str:
|
||||
try:
|
||||
return self.conf.get("storyline", "censored_site")
|
||||
except:
|
||||
return "airav,xcity,amazon"
|
||||
return "2:airav,5:xcity,6:amazon"
|
||||
|
||||
def storyline_uncensored_site(self) -> str:
|
||||
try:
|
||||
return self.conf.get("storyline", "uncensored_site")
|
||||
except:
|
||||
return "58avgo"
|
||||
return "3:58avgo"
|
||||
|
||||
def storyline_show(self) -> int:
|
||||
try:
|
||||
@@ -374,9 +380,10 @@ class Config:
|
||||
|
||||
sec14 = "storyline"
|
||||
conf.add_section(sec14)
|
||||
conf.set(sec14, "site", "avno1")
|
||||
conf.set(sec14, "censored_site", "airav,xcity,amazon")
|
||||
conf.set(sec14, "uncensored_site", "58avgo")
|
||||
conf.set(sec14, "switch", 1)
|
||||
conf.set(sec14, "site", "1:avno1,4:airavwiki")
|
||||
conf.set(sec14, "censored_site", "2:airav,5:xcity,6:amazon")
|
||||
conf.set(sec14, "uncensored_site", "3:58avgo")
|
||||
conf.set(sec14, "show_result", 0)
|
||||
conf.set(sec14, "run_mode", 1)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user