From 70bb10a2fccfff5b86907ef688cae4ab87ab0572 Mon Sep 17 00:00:00 2001 From: Alfa-beto <30815244+Alfa-beto@users.noreply.github.com> Date: Wed, 9 Jan 2019 10:42:49 -0300 Subject: [PATCH] Correcciones MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Goovie: Mejora en el código - PelisFox: Corrección en la búsqueda - PelisPlus: Corrección en la detección de enlaces - TvSeriesDk: Corrección en nuevos episodios - Vi2: Mejora en la búsqueda --- plugin.video.alfa/channels/goovie.py | 19 ++++---------- plugin.video.alfa/channels/pelisfox.py | 12 +++++---- plugin.video.alfa/channels/pelisplus.py | 32 +++++++++++++----------- plugin.video.alfa/channels/tvseriesdk.py | 5 ++-- plugin.video.alfa/channels/vi2.py | 5 ++-- 5 files changed, 35 insertions(+), 38 deletions(-) diff --git a/plugin.video.alfa/channels/goovie.py b/plugin.video.alfa/channels/goovie.py index 19363394..84c89358 100644 --- a/plugin.video.alfa/channels/goovie.py +++ b/plugin.video.alfa/channels/goovie.py @@ -206,11 +206,12 @@ def episodesxseasons(item): return itemlist - def findvideos(item): + from lib.generictools import privatedecrypt logger.info() - from lib import jsunpack + itemlist = [] + data = get_source(item.url) patron = "onclick=clickLink\(this, '([^']+)', '([^']+)', '([^']+)'\);>" @@ -218,18 +219,8 @@ def findvideos(item): headers = {'referer': item.url} for url, quality, language in matches: - data = httptools.downloadpage(url, headers=headers, follow_redirects=False).data - data = re.sub(r'"|\n|\r|\t| |
|\s{2,}', "", data) - packed = scrapertools.find_single_match(data, '(eval\(.*?);var') - unpacked = jsunpack.unpack(packed) - server = scrapertools.find_single_match(unpacked, "src:.'(http://\D+)/") - id = scrapertools.find_single_match(unpacked, "src:.'http://\D+/.*?description:.'(.*?).'") - if server == '': - if 'powvideo' in unpacked: - id = scrapertools.find_single_match(unpacked, ",description:.'(.*?).'") - server = 'https://powvideo.net' - url = '%s/%s' % (server, id) - if server != '' and id != '': + url = privatedecrypt(url, headers) + if url != '': language = IDIOMAS[language] if quality.lower() == 'premium': quality = '720p' diff --git a/plugin.video.alfa/channels/pelisfox.py b/plugin.video.alfa/channels/pelisfox.py index 07e10e4c..0a03118a 100644 --- a/plugin.video.alfa/channels/pelisfox.py +++ b/plugin.video.alfa/channels/pelisfox.py @@ -46,7 +46,7 @@ def mainlist(item): itemlist.append(item.clone(title="Por Año", action="seccion", - url=host + '/peliculas/2017/', + url=host + '/peliculas/2019/', thumbnail=get_thumb('year', auto=True), seccion='anios' )) @@ -60,7 +60,7 @@ def mainlist(item): itemlist.append(item.clone(title="Buscar", action="search", - url=host + '/api/elastic/suggest?query=', + url=host + '/api/suggest?query=', thumbnail=get_thumb('search', auto=True) )) @@ -185,14 +185,16 @@ def seccion(item): def busqueda(item): logger.info() itemlist = [] - data = httptools.downloadpage(item.url).data + headers = {'referer':host, 'X-Requested-With': 'XMLHttpRequest'} + data = httptools.downloadpage(item.url, headers=headers).data + logger.debug(data) dict_data = jsontools.load(data) - resultados = dict_data['result'][0]['options'] + resultados = dict_data['suggest']['result'][0]['options'] for resultado in resultados: if 'title' in resultado['_source']: title = resultado['_source']['title'] - thumbnail = 'http://s3.amazonaws.com/pelisfox' + '/' + resultado['_source']['cover'] + thumbnail = 'https://static.pelisfox.tv/static/movie' + '/' + resultado['_source']['cover'] plot = resultado['_source']['sinopsis'] url = host + resultado['_source']['url'] + '/' diff --git a/plugin.video.alfa/channels/pelisplus.py b/plugin.video.alfa/channels/pelisplus.py index 75d86035..90d249e5 100644 --- a/plugin.video.alfa/channels/pelisplus.py +++ b/plugin.video.alfa/channels/pelisplus.py @@ -226,7 +226,6 @@ def findvideos(item): matches = re.compile(patron, re.DOTALL).findall(data) for video_url in matches: - language = 'latino' if not config.get_setting('unify'): title = ' [%s]' % language.capitalize() @@ -235,34 +234,39 @@ def findvideos(item): if 'pelisplus.net' in video_url: referer = video_url - post = {'r':item.url} + post = {'r':item.url, 'd': 'www.pelisplus.net'} post = urllib.urlencode(post) - video_url = video_url.replace('/v/', '/api/sources/') + video_url = video_url.replace('/v/', '/api/source/') url_data = httptools.downloadpage(video_url, post=post, headers={'Referer':referer}).data patron = '"file":"([^"]+)","label":"([^"]+)"' matches = re.compile(patron, re.DOTALL).findall(url_data) for url, quality in matches: - url = url.replace('\/', '/') + url = 'https://www.pelisplus.net' + url.replace('\/', '/') itemlist.append( Item(channel=item.channel, title='%s' + title, url=url, action='play', language=IDIOMAS[language], quality=quality, infoLabels=item.infoLabels)) else: - url_data = get_source(video_url) - url = scrapertools.find_single_match(url_data, '