diff --git a/plugin.video.alfa/channels/allcalidad.py b/plugin.video.alfa/channels/allcalidad.py index 9d92167f..fa8ca804 100755 --- a/plugin.video.alfa/channels/allcalidad.py +++ b/plugin.video.alfa/channels/allcalidad.py @@ -142,7 +142,7 @@ def findvideos(item): # Opción "Añadir esta película a la biblioteca de XBMC" if item.extra != "library": if config.get_videolibrary_support(): - itemlist.append(Item(channel=item.channel, title="Añadir a la biblioteca", text_color="green", + itemlist.append(Item(channel=item.channel, title="Añadir a la videoteca", text_color="green", filtro=True, action="add_pelicula_to_library", url=item.url, thumbnail = item.thumbnail, infoLabels={'title': item.fulltitle}, fulltitle=item.fulltitle, extra="library")) diff --git a/plugin.video.alfa/channels/cinetux.json b/plugin.video.alfa/channels/cinetux.json index f4547781..5ff1aa3d 100755 --- a/plugin.video.alfa/channels/cinetux.json +++ b/plugin.video.alfa/channels/cinetux.json @@ -9,6 +9,10 @@ "fanart": "cinetux.jpg", "version": 1, "changes": [ + { + "date": "31/07/2017", + "description": "Actualizado por cambio de estructura de la página" + }, { "date": "12/05/2017", "description": "Arreglada paginación y enlaces directos" @@ -121,4 +125,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/plugin.video.alfa/channels/cinetux.py b/plugin.video.alfa/channels/cinetux.py index 6f732a12..c0d0b3c3 100755 --- a/plugin.video.alfa/channels/cinetux.py +++ b/plugin.video.alfa/channels/cinetux.py @@ -10,6 +10,7 @@ from core import servertools from core import tmdb from core.item import Item + CHANNEL_HOST = "http://www.cinetux.net/" # Configuracion del canal @@ -31,12 +32,15 @@ def mainlist(item): itemlist = [] item.viewmode = viewmode - itemlist.append(item.clone(title="Películas", text_color=color2, action="", text_bold=True)) - itemlist.append(item.clone(action="peliculas", title=" Novedades", url=CHANNEL_HOST, + data = httptools.downloadpage(CHANNEL_HOST).data + total = scrapertools.find_single_match(data, "TENEMOS\s(.*?)") + titulo = "Peliculas (%s)" %total + itemlist.append(item.clone(title=titulo, text_color=color2, action="", text_bold=True)) + itemlist.append(item.clone(action="peliculas", title=" Novedades", url=CHANNEL_HOST + "pelicula", thumbnail="https://raw.githubusercontent.com/master-1970/resources/master/images/genres" "/0/Directors%20Chair.png", text_color=color1)) - itemlist.append(item.clone(action="vistas", title=" Más vistas", url="http://www.cinetux.net/mas-vistos/", + itemlist.append(item.clone(action="destacadas", title=" Destacadas", url="http://www.cinetux.net/mas-vistos/", thumbnail="https://raw.githubusercontent.com/master-1970/resources/master/images/genres" "/0/Favorites.png", text_color=color1)) @@ -130,22 +134,22 @@ def peliculas(item): # Descarga la página data = httptools.downloadpage(item.url).data - - # Extrae las entradas (carpetas) - patron = '
.*?
\s*([^<]*)<.*?href="([^"]+)".*?src="([^"]+)"' \ - '.*?

([^<]+)' + patron = '(?s)class="(?:result-item|item movies)">.*?([^<]+)') try: - fulltitle, year = scrapedtitle.rsplit("(", 1) - year = scrapertools.get_match(year, '(\d{4})') + fulltitle = scrapedtitle + year = scrapedyear.replace(" ","") if "/" in fulltitle: fulltitle = fulltitle.split(" /", 1)[0] - scrapedtitle = "%s (%s)" % (fulltitle, year) + scrapedtitle = "%s (%s)" % (fulltitle, year) except: fulltitle = scrapedtitle - year = "" - if calidad: scrapedtitle += " [%s]" % calidad new_item = item.clone(action="findvideos", title=scrapedtitle, fulltitle=fulltitle, @@ -155,12 +159,13 @@ def peliculas(item): new_item.infoLabels['year'] = int(year) itemlist.append(new_item) try: - tmdb.set_infoLabels(itemlist, __modo_grafico__) + #tmdb.set_infoLabels(itemlist, __modo_grafico__) + a = 1 except: pass # Extrae el paginador - next_page_link = scrapertools.find_single_match(data, ']+>»') + next_page_link = scrapertools.find_single_match(data, '([^<]+)' - matches = scrapertools.find_multiple_matches(data, patron) - for scrapedurl, scrapedthumbnail, scrapedtitle in matches: + bloque = scrapertools.find_single_match(data, 'peliculas_destacadas.*?class="single-page') + patron = '(?s)title="([^"]+)"' + patron += '.href="([^"]+)"' + patron += '.*?src="([^"]+)' + matches = scrapertools.find_multiple_matches(bloque, patron) + for scrapedtitle, scrapedurl, scrapedthumbnail in matches: + scrapedurl = "http://www.cinetux.net" + scrapedurl + scrapedtitle = scrapedtitle.replace("Ver ","") new_item = item.clone(action="findvideos", title=scrapedtitle, fulltitle=scrapedtitle, url=scrapedurl, thumbnail=scrapedthumbnail, contentTitle=scrapedtitle, contentType="movie") @@ -189,7 +198,7 @@ def vistas(item): # Extrae el paginador next_page_link = scrapertools.find_single_match(data, ']+>»') if next_page_link: - itemlist.append(item.clone(action="vistas", title=">> Página siguiente", url=next_page_link, text_color=color3)) + itemlist.append(item.clone(action="destacadas", title=">> Página siguiente", url=next_page_link, text_color=color3)) return itemlist @@ -200,15 +209,15 @@ def generos(item): # Descarga la página data = httptools.downloadpage(item.url).data - bloque = scrapertools.find_single_match(data, '
Géneros
(.*?)') - + bloque = scrapertools.find_single_match(data, '(?s)dos_columnas">(.*?)') # Extrae las entradas - patron = '
  • (.*?)
  • ' + patron = '
  • (.*?)
  • ' matches = scrapertools.find_multiple_matches(bloque, patron) for scrapedurl, scrapedtitle in matches: + scrapedurl = CHANNEL_HOST + scrapedurl scrapedtitle = scrapertools.htmlclean(scrapedtitle).strip() scrapedtitle = unicode(scrapedtitle, "utf8").capitalize().encode("utf8") - if scrapedtitle == "Erotico" and config.get_setting("adult_mode") == '0': + if scrapedtitle == "Erotico" and config.get_setting("adult_mode") == 0: continue itemlist.append(item.clone(action="peliculas", title=scrapedtitle, url=scrapedurl)) @@ -226,7 +235,7 @@ def idioma(item): return itemlist - + def findvideos(item): logger.info() itemlist = [] @@ -241,10 +250,10 @@ def findvideos(item): # Busca el argumento data = httptools.downloadpage(item.url).data - year = scrapertools.find_single_match(data, '

    .*?rel="tag">([^<]+)') + year = scrapertools.find_single_match(item.title, "\(([0-9]+)") if year and item.extra != "library": - item.infoLabels['year'] = int(year) + item.infoLabels['year'] = int(year) # Ampliamos datos en tmdb if not item.infoLabels['plot']: try: @@ -271,15 +280,15 @@ def findvideos(item): if itemlist: itemlist.append(item.clone(channel="trailertools", title="Buscar Tráiler", action="buscartrailer", context="", - text_color="magenta")) - # Opción "Añadir esta película a la videoteca de XBMC" + text_color="magenta")) + # Opción "Añadir esta película a la videoteca" if item.extra != "library": if config.get_videolibrary_support(): itemlist.append(Item(channel=item.channel, title="Añadir a la videoteca", text_color="green", filtro=True, action="add_pelicula_to_library", url=item.url, infoLabels={'title': item.fulltitle}, fulltitle=item.fulltitle, extra="library")) - + else: itemlist.append(item.clone(title="No hay enlaces disponibles", action="", text_color=color3)) @@ -289,66 +298,84 @@ def findvideos(item): def bloque_enlaces(data, filtro_idioma, dict_idiomas, type, item): logger.info() lista_enlaces = [] - matches = [] + if type == "online" : t_tipo = "Ver Online" + if type == "descarga": t_tipo = "Descargar" + data = data.replace("\n","") if type == "online": - patron = '([^<]+)' - bloques = scrapertools.find_multiple_matches(data, patron) - for id, language in bloques: - patron = 'id="' + id + '">.*?