Powvideo y Streamplay con resolver propio
This commit is contained in:
1
plugin.video.alfa/lib/alfaresolver.py
Normal file
1
plugin.video.alfa/lib/alfaresolver.py
Normal file
File diff suppressed because one or more lines are too long
@@ -27,32 +27,14 @@ def get_video_url(page_url, premium=False, user="", password="", video_password=
|
||||
referer = page_url.replace('iframe', 'preview')
|
||||
|
||||
data = httptools.downloadpage(page_url, headers={'referer': referer}).data
|
||||
switch = 0 if '_0x4a3f' in data else 1 if '_0x34ab' in data else 2 if '_0x5db1' in data else 3
|
||||
|
||||
packed = scrapertools.find_single_match(data, "<script type=[\"']text/javascript[\"']>(eval.*?)</script>")
|
||||
unpacked = jsunpack.unpack(packed)
|
||||
|
||||
url = scrapertools.find_single_match(unpacked, "(?:src):\\\\'([^\\\\]+.mp4)\\\\'")
|
||||
|
||||
itemlist.append([".mp4" + " [powvideo]", decode_video_url(url, switch)])
|
||||
from lib import alfaresolver
|
||||
itemlist.append([".mp4" + " [powvideo]", alfaresolver.decode_video_url(url, data)])
|
||||
|
||||
itemlist.sort(key=lambda x: x[0], reverse=True)
|
||||
return itemlist
|
||||
|
||||
def decode_video_url(url, switch):
|
||||
tria = re.compile('[0-9a-z]{40,}', re.IGNORECASE).findall(url)[0]
|
||||
gira = tria[::-1]
|
||||
x = gira[0] + gira[2:]
|
||||
r = list(x)
|
||||
if switch == 0:
|
||||
r[7], r[4] = r[4], r[7]
|
||||
r[0], r[9] = r[9], r[0]
|
||||
r[3], r[2] = r[2], r[3]
|
||||
elif switch == 1:
|
||||
r[5], r[0] = r[0], r[5]
|
||||
r[3], r[6] = r[6], r[3]
|
||||
r[8], r[9] = r[9], r[8]
|
||||
elif switch == 2:
|
||||
r[9], r[3] = r[3], r[9]
|
||||
r[6], r[1] = r[1], r[6]
|
||||
r[0], r[7] = r[7], r[0]
|
||||
return re.sub(tria, ''.join(r), url)
|
||||
|
||||
@@ -30,7 +30,6 @@ def get_video_url(page_url, premium=False, user="", password="", video_password=
|
||||
referer = re.sub(r"embed-|player-", "", page_url)[:-5]
|
||||
|
||||
data = httptools.downloadpage(page_url, headers={'Referer': referer}).data
|
||||
switch = 1 if '_0x4b94' in data else 0
|
||||
|
||||
if data == "File was deleted":
|
||||
return "El archivo no existe o ha sido borrado"
|
||||
@@ -39,22 +38,10 @@ def get_video_url(page_url, premium=False, user="", password="", video_password=
|
||||
unpacked = jsunpack.unpack(packed)
|
||||
|
||||
url = scrapertools.find_single_match(unpacked, '(http[^,]+\.mp4)')
|
||||
itemlist.append([".mp4" + " [streamplay]", decode_video_url(url, switch)])
|
||||
|
||||
from lib import alfaresolver
|
||||
itemlist.append([".mp4" + " [streamplay]", alfaresolver.decode_video_url(url, data)])
|
||||
|
||||
itemlist.sort(key=lambda x: x[0], reverse=True)
|
||||
|
||||
return itemlist
|
||||
|
||||
def decode_video_url(url, switch):
|
||||
tria = re.compile('[0-9a-z]{40,}', re.IGNORECASE).findall(url)[0]
|
||||
gira = tria[::-1]
|
||||
x = gira[0] + gira[2:]
|
||||
r = list(x)
|
||||
if switch == 0:
|
||||
r[4], r[2] = r[2], r[4]
|
||||
r[5], r[9] = r[9], r[5]
|
||||
r[1], r[7] = r[7], r[1]
|
||||
else:
|
||||
r[7], r[0] = r[0], r[7]
|
||||
r[3], r[6] = r[6], r[3]
|
||||
r[2], r[5] = r[5], r[2]
|
||||
return re.sub(tria, ''.join(r), url)
|
||||
|
||||
Reference in New Issue
Block a user