Fix animeunity, cinemalibero sezione anime
This commit is contained in:
@@ -5,7 +5,7 @@
|
|||||||
|
|
||||||
import cloudscraper, json, copy, inspect
|
import cloudscraper, json, copy, inspect
|
||||||
from core import jsontools, support
|
from core import jsontools, support
|
||||||
from platformcode import autorenumber, logger
|
from platformcode import autorenumber
|
||||||
|
|
||||||
session = cloudscraper.create_scraper()
|
session = cloudscraper.create_scraper()
|
||||||
|
|
||||||
@@ -154,15 +154,19 @@ def peliculas(item):
|
|||||||
|
|
||||||
payload = json.dumps(item.args)
|
payload = json.dumps(item.args)
|
||||||
records = session.post(host + '/archivio/get-animes', headers=headers, data=payload).json()['records']
|
records = session.post(host + '/archivio/get-animes', headers=headers, data=payload).json()['records']
|
||||||
|
|
||||||
for it in records:
|
for it in records:
|
||||||
|
if not it['title']:
|
||||||
|
it['title'] = ''
|
||||||
lang = support.match(it['title'], patron=r'\(([It][Tt][Aa])\)').match
|
lang = support.match(it['title'], patron=r'\(([It][Tt][Aa])\)').match
|
||||||
title = support.re.sub(r'\s*\([^\)]+\)', '', it['title'])
|
title = support.re.sub(r'\s*\([^\)]+\)', '', it['title'])
|
||||||
|
|
||||||
if 'ita' in lang.lower(): language = 'ITA'
|
if 'ita' in lang.lower(): language = 'ITA'
|
||||||
else: language = 'Sub-ITA'
|
else: language = 'Sub-ITA'
|
||||||
|
|
||||||
itm = item.clone(title=support.typo(title,'bold') + support.typo(language,'_ [] color kod') + (support.typo(it['title_eng'],'_ ()') if it['title_eng'] else ''))
|
if title:
|
||||||
|
itm = item.clone(title=support.typo(title,'bold') + support.typo(language,'_ [] color kod') + (support.typo(it['title_eng'],'_ ()') if it['title_eng'] else ''))
|
||||||
|
else:
|
||||||
|
itm = item.clone(title=support.typo(it['title_eng'],'bold') + support.typo(language,'_ [] color kod'))
|
||||||
itm.contentLanguage = language
|
itm.contentLanguage = language
|
||||||
itm.type = it['type']
|
itm.type = it['type']
|
||||||
itm.thumbnail = it['imageurl']
|
itm.thumbnail = it['imageurl']
|
||||||
|
|||||||
@@ -155,7 +155,11 @@ def episodios(item):
|
|||||||
for s in servers:
|
for s in servers:
|
||||||
executor.submit(get_ep, s)
|
executor.submit(get_ep, s)
|
||||||
# logger.debug(it.contentLanguage)
|
# logger.debug(it.contentLanguage)
|
||||||
ret.extend([it.clone(title=typo(ep, 'bold')+typo(it.contentLanguage, '_ [] color kod bold'), contentSeason=int(ep.split('x')[0]), contentEpisodeNumber=int(ep.split('x')[1]), servers=[srv.tourl() for srv in episodes[ep]]) for ep in episodes])
|
ret.extend([it.clone(title=typo(ep, 'bold')+typo(it.contentLanguage, '_ [] color kod bold'), servers=[srv.tourl() for srv in episodes[ep]]) for ep in episodes])
|
||||||
|
if item.args != 'anime':
|
||||||
|
for n, r in enumerate(ret):
|
||||||
|
r.contentSeason = int(episodes[n].split('x')[0])
|
||||||
|
r.contentEpisodeNumber = int(episodes[n].split('x')[1])
|
||||||
elif ep:
|
elif ep:
|
||||||
ret.append(it)
|
ret.append(it)
|
||||||
return sorted(ret, key=lambda i: i.title)
|
return sorted(ret, key=lambda i: i.title)
|
||||||
|
|||||||
+5
-2
@@ -420,7 +420,7 @@ def downloadpage(url, **opt):
|
|||||||
if 'Px-Host' in req_headers: # first try with proxy
|
if 'Px-Host' in req_headers: # first try with proxy
|
||||||
logger.debug("CF retry with google translate for domain: %s" % domain)
|
logger.debug("CF retry with google translate for domain: %s" % domain)
|
||||||
from lib import proxytranslate
|
from lib import proxytranslate
|
||||||
gResp = proxytranslate.process_request_proxy(url)
|
gResp = proxytranslate.process_request_proxy(opt.get('real-url', url))
|
||||||
if gResp:
|
if gResp:
|
||||||
req = gResp['result']
|
req = gResp['result']
|
||||||
response_code = req.status_code
|
response_code = req.status_code
|
||||||
@@ -431,7 +431,10 @@ def downloadpage(url, **opt):
|
|||||||
if not opt.get('headers'):
|
if not opt.get('headers'):
|
||||||
opt['headers'] = []
|
opt['headers'] = []
|
||||||
opt['headers'].extend([['Px-Host', domain], ['Px-Token', cf_proxy['token']]])
|
opt['headers'].extend([['Px-Host', domain], ['Px-Token', cf_proxy['token']]])
|
||||||
return downloadpage(urlparse.urlunparse((parse.scheme, cf_proxy['url'], parse.path, parse.params, parse.query, parse.fragment)), **opt)
|
opt['real-url'] = url
|
||||||
|
ret = downloadpage(urlparse.urlunparse((parse.scheme, cf_proxy['url'], parse.path, parse.params, parse.query, parse.fragment)), **opt)
|
||||||
|
ret.url = url
|
||||||
|
return ret
|
||||||
|
|
||||||
if not response['data']:
|
if not response['data']:
|
||||||
response['data'] = ''
|
response['data'] = ''
|
||||||
|
|||||||
@@ -3,19 +3,17 @@
|
|||||||
import time, string, random
|
import time, string, random
|
||||||
from core import httptools, support
|
from core import httptools, support
|
||||||
from platformcode import logger, config
|
from platformcode import logger, config
|
||||||
import cloudscraper
|
|
||||||
scraper = cloudscraper.create_scraper()
|
|
||||||
|
|
||||||
def test_video_exists(page_url):
|
def test_video_exists(page_url):
|
||||||
global data
|
global data
|
||||||
logger.debug('page url=', page_url)
|
logger.debug('page url=', page_url)
|
||||||
|
|
||||||
response = scraper.get(page_url)
|
response = httptools.downloadpage(page_url)
|
||||||
# support.dbg()
|
support.dbg()
|
||||||
if response.status_code == 404 or 'dsplayer' not in response.text:
|
if response.code == 404 or 'dsplayer' not in response.data:
|
||||||
return False, config.get_localized_string(70449) % 'DooD Stream'
|
return False, config.get_localized_string(70449) % 'DooD Stream'
|
||||||
else:
|
else:
|
||||||
data = response.text
|
data = response.data
|
||||||
return True, ""
|
return True, ""
|
||||||
|
|
||||||
|
|
||||||
@@ -30,7 +28,7 @@ def get_video_url(page_url, premium=False, user="", password="", video_password=
|
|||||||
match = support.match(data, patron=r'''dsplayer\.hotkeys[^']+'([^']+).+?function\s*makePlay.+?return[^?]+([^"]+)''').match
|
match = support.match(data, patron=r'''dsplayer\.hotkeys[^']+'([^']+).+?function\s*makePlay.+?return[^?]+([^"]+)''').match
|
||||||
if match:
|
if match:
|
||||||
url, token = match
|
url, token = match
|
||||||
ret = scraper.get(host + url, headers=headers).text
|
ret = httptools.downloadpage(host + url, headers=headers).data
|
||||||
video_urls.append(['mp4 [DooD Stream]', '{}{}{}{}|Referer={}'.format(randomize(ret), url, token, int(time.time() * 1000), host)])
|
video_urls.append(['mp4 [DooD Stream]', '{}{}{}{}|Referer={}'.format(randomize(ret), url, token, int(time.time() * 1000), host)])
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user