From 660a7899eb1ed028ca995ca30d1cbbd042b19eac Mon Sep 17 00:00:00 2001 From: Intel1 <25161862+Intel11@users.noreply.github.com> Date: Wed, 20 Feb 2019 15:10:03 -0500 Subject: [PATCH] Update hdfull.py --- plugin.video.alfa/channels/hdfull.py | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/plugin.video.alfa/channels/hdfull.py b/plugin.video.alfa/channels/hdfull.py index 8140ecf7..7b369752 100644 --- a/plugin.video.alfa/channels/hdfull.py +++ b/plugin.video.alfa/channels/hdfull.py @@ -533,17 +533,17 @@ def findvideos(item): key = scrapertools.find_single_match(data_js, 'JSON.parse\(atob.*?substrings\((.*?)\)') data_js = httptools.downloadpage("%s/js/providers.js" % host).data - try: - from lib import alfaresolver - provs = alfaresolver.hdfull_providers(data_js) - if provs == '': return [] - except: - return [] + decoded = jhexdecode(data_js) + providers_pattern = 'p\[(\d+)\]= {"t":"([^"]+)","d":".*?","e":.function.*?,"l":.function.*?return "([^"]+)".*?};' + providers = scrapertools.find_multiple_matches (decoded, providers_pattern) + provs = {} + for provider, e, l in providers: + provs[provider]=[e,l] data = agrupa_datos(httptools.downloadpage(item.url).data) data_obf = scrapertools.find_single_match(data, "var ad\s*=\s*'([^']+)'") - data_decrypt = jsontools.load(obfs(base64.b64decode(data_obf), 126 - int(key))) + data_decrypt = jsontools.load(obfs(base64.b64decode(data_obf), 126 - int(key))) infolabels = {} year = scrapertools.find_single_match(data, 'Año:\s*.*?(\d{4})') infolabels["year"] = year @@ -552,7 +552,7 @@ def findvideos(item): if match['provider'] in provs: try: embed = provs[match['provider']][0] - url = eval(provs[match['provider']][1].replace('_code_', "match['code']")) + url = provs[match['provider']][1]+match['code'] matches.append([match['lang'], match['quality'], url, embed]) except: pass @@ -691,7 +691,6 @@ def get_status(status, type, id): ## -------------------------------------------------------------------------------- ## -------------------------------------------------------------------------------- - def jhexdecode(t): r = re.sub(r'_\d+x\w+x(\d+)', 'var_' + r'\1', t) r = re.sub(r'_\d+x\w+', 'var_0', r)