From 7602cacc8f99197c3e7eca4a7bd00b9f556d6da9 Mon Sep 17 00:00:00 2001 From: Alfa-beto <30815244+Alfa-beto@users.noreply.github.com> Date: Wed, 22 Aug 2018 16:06:34 -0300 Subject: [PATCH] correcciones --- plugin.video.alfa/channels/autoplay.py | 8 ++- plugin.video.alfa/channels/cuevana3.py | 77 +++++++++++++++----------- 2 files changed, 50 insertions(+), 35 deletions(-) diff --git a/plugin.video.alfa/channels/autoplay.py b/plugin.video.alfa/channels/autoplay.py index 90e79826..882a246d 100644 --- a/plugin.video.alfa/channels/autoplay.py +++ b/plugin.video.alfa/channels/autoplay.py @@ -102,7 +102,12 @@ def start(itemlist, item): if item.channel == 'videolibrary': autoplay_node = jsontools.get_node_from_file('autoplay', 'AUTOPLAY') channel_id = item.contentChannel - if not channel_id in autoplay_node or not autoplay_node['status']: + try: + active = autoplay_node['status'] + except: + active = is_active(item.channel) + + if not channel_id in autoplay_node or not active: return itemlist # Agrega servidores y calidades que no estaban listados a autoplay_node @@ -408,7 +413,6 @@ def init(channel, list_servers, list_quality, reset=False): channel_node["settings"]["server_%s" % n] = s channel_node["settings"]["quality_%s" % n] = c - autoplay_node[channel] = channel_node if change: diff --git a/plugin.video.alfa/channels/cuevana3.py b/plugin.video.alfa/channels/cuevana3.py index 8265426b..9c4d64b3 100644 --- a/plugin.video.alfa/channels/cuevana3.py +++ b/plugin.video.alfa/channels/cuevana3.py @@ -30,19 +30,27 @@ def mainlist(item): autoplay.init(item.channel, list_servers, list_quality) itemlist = list() - itemlist.append(item.clone(title="Ultimas", action="list_all", url=host, thumbnail=get_thumb('last', auto=True))) - itemlist.append(item.clone(title="Generos", action="section", section='genre', - thumbnail=get_thumb('genres', auto=True))) - itemlist.append(item.clone(title="Castellano", action="list_all", url= host+'?s=Español', - thumbnail=get_thumb('audio', auto=True))) - itemlist.append(item.clone(title="Latino", action="list_all", url=host + '?s=Latino', - thumbnail=get_thumb('audio', auto=True))) - itemlist.append(item.clone(title="VOSE", action="list_all", url=host + '?s=Subtitulado', - thumbnail=get_thumb('audio', auto=True))) - itemlist.append(item.clone(title="Alfabetico", action="section", section='alpha', - thumbnail=get_thumb('alphabet', auto=True))) - itemlist.append(item.clone(title="Buscar", action="search", url=host+'?s=', - thumbnail=get_thumb('search', auto=True))) + + itemlist.append(Item(channel=item.channel, title="Ultimas", action="list_all", url=host, + thumbnail=get_thumb('last', auto=True))) + + itemlist.append(Item(channel=item.channel, title="Generos", action="section", section='genre', + thumbnail=get_thumb('genres', auto=True))) + + itemlist.append(Item(channel=item.channel, title="Castellano", action="list_all", url= host+'espanol', + thumbnail=get_thumb('audio', auto=True))) + + itemlist.append(Item(channel=item.channel, title="Latino", action="list_all", url=host + 'latino', + thumbnail=get_thumb('audio', auto=True))) + + itemlist.append(Item(channel=item.channel, title="VOSE", action="list_all", url=host + 'subtitulado', + thumbnail=get_thumb('audio', auto=True))) + + itemlist.append(Item(channel=item.channel, title="Alfabetico", action="section", section='alpha', + thumbnail=get_thumb('alphabet', auto=True))) + + itemlist.append(Item(channel=item.channel, title="Buscar", action="search", url=host+'?s=', + thumbnail=get_thumb('search', auto=True))) autoplay.show_option(item.channel, itemlist) @@ -52,7 +60,7 @@ def mainlist(item): def get_source(url): logger.info() data = httptools.downloadpage(url).data - data = re.sub(r'"|\n|\r|\t| |
|\s{2,}', "", data) + data = re.sub(r'\n|\r|\t| |
|\s{2,}', "", data) return data @@ -63,11 +71,11 @@ def list_all(item): try: data = get_source(item.url) if item.section == 'alpha': - patron = '\d+.*?') + url_next_page = scrapertools.find_single_match(data,'.*?') elif item.section == 'alpha': - patron = '
  • (.*?)' - action = 'list_all' + data = scrapertools.find_single_match(data, '') + patron = '([^<]+)' matches = re.compile(patron, re.DOTALL).findall(data) for data_one, data_two in matches: @@ -136,11 +141,17 @@ def findvideos(item): itemlist = [] data = get_source(item.url) - patron = 'domain=(.*?) class=.*?>.*?.*?\d+ - (.*?) - (.*?)' + patron = 'TPlayerNv="Opt(\w\d+)".*?img src="(.*?)\d+ - (.*?) - ([^<]+)<' matches = re.compile(patron, re.DOTALL).findall(data) - for url, language, quality in matches: + for option, url_data, language, quality in matches: + if 'domain' in url_data: + url = scrapertools.find_single_match(url_data, 'domain=([^"]+)"') + else: + url = scrapertools.find_single_match(data, 'id="Opt%s">.*?file=([^"]+)"' % option) + if url != '' and 'youtube' not in url: - itemlist.append(item.clone(title='%s', url=url, language=IDIOMAS[language], quality=quality, action='play')) + itemlist.append(Item(channel=item.channel, title='%s', url=url, language=IDIOMAS[language], + quality=quality, action='play')) itemlist = servertools.get_servers_itemlist(itemlist, lambda i: i.title % '%s [%s] [%s]'%(i.server.capitalize(), i.language, i.quality))