diff --git a/plugin.video.alfa/addon.xml b/plugin.video.alfa/addon.xml index 418c82c2..eb2073f8 100755 --- a/plugin.video.alfa/addon.xml +++ b/plugin.video.alfa/addon.xml @@ -1,5 +1,5 @@ - + @@ -19,14 +19,13 @@ [B]Estos son los cambios para esta versión:[/B] [COLOR green][B]Canales agregados y arreglos[/B][/COLOR] - » newpct » newpct1 - » youtube » flashx - » kbagi » pelismagnet - » gnula » animemovil - » cinecalidad » cuelgame - » divxtotal » cinemahd + » gnula » pelismagnet + » allcalidad » streamcherry + » streamango » pepecine + » mejortorrent » torrentrapid + » cinecalidad ¤ arreglos internos - ¤ Agradecimientos a @Paquito Porras por PelisUltra. + ¤ Agradecimientos a @prpeaprendiz y @ikarywarriors por colaborar. Navega con Kodi por páginas web para ver sus videos de manera fácil. Browse web pages using Kodi diff --git a/plugin.video.alfa/channels/allcalidad.py b/plugin.video.alfa/channels/allcalidad.py index 04d73f46..97ac059a 100755 --- a/plugin.video.alfa/channels/allcalidad.py +++ b/plugin.video.alfa/channels/allcalidad.py @@ -1,5 +1,6 @@ # -*- coding: utf-8 -*- +from channelselector import get_thumb from core import httptools from core import scrapertools from core import servertools @@ -20,12 +21,12 @@ except: def mainlist(item): logger.info() itemlist = [] - itemlist.append(Item(channel = item.channel, title = "Novedades", action = "peliculas", url = host)) - itemlist.append(Item(channel = item.channel, title = "Por género", action = "generos_years", url = host, extra = "Genero" )) - itemlist.append(Item(channel = item.channel, title = "Por año", action = "generos_years", url = host, extra = ">Año<")) - itemlist.append(Item(channel = item.channel, title = "Favoritas", action = "peliculas", url = host + "/favorites" )) + itemlist.append(Item(channel = item.channel, title = "Novedades", action = "peliculas", url = host, thumbnail = get_thumb("newest", auto = True))) + itemlist.append(Item(channel = item.channel, title = "Por género", action = "generos_years", url = host, extra = "Genero", thumbnail = get_thumb("genres", auto = True) )) + itemlist.append(Item(channel = item.channel, title = "Por año", action = "generos_years", url = host, extra = ">Año<", thumbnail = get_thumb("year", auto = True))) + itemlist.append(Item(channel = item.channel, title = "Favoritas", action = "peliculas", url = host + "/favorites", thumbnail = get_thumb("favorites", auto = True) )) itemlist.append(Item(channel = item.channel, title = "")) - itemlist.append(Item(channel = item.channel, title = "Buscar", action = "search", url = host + "?s=")) + itemlist.append(Item(channel = item.channel, title = "Buscar", action = "search", url = host + "?s=", thumbnail = get_thumb("search", auto = True))) return itemlist def newest(categoria): diff --git a/plugin.video.alfa/channels/cinecalidad.json b/plugin.video.alfa/channels/cinecalidad.json index 9f31cf60..db742d23 100755 --- a/plugin.video.alfa/channels/cinecalidad.json +++ b/plugin.video.alfa/channels/cinecalidad.json @@ -7,7 +7,8 @@ "thumbnail": "https://s31.postimg.org/puxmvsi7v/cinecalidad.png", "banner": "https://s32.postimg.org/kihkdpx1x/banner_cinecalidad.png", "categories": [ - "movie" + "movie", + "torrent" ], "settings": [ { @@ -29,7 +30,7 @@ "No filtrar", "Latino", "Español", - "Portuges" + "Portugues" ] }, { diff --git a/plugin.video.alfa/channels/cinecalidad.py b/plugin.video.alfa/channels/cinecalidad.py index dbecbd25..83bcb0de 100644 --- a/plugin.video.alfa/channels/cinecalidad.py +++ b/plugin.video.alfa/channels/cinecalidad.py @@ -29,16 +29,20 @@ list_servers = [ 'usersfiles', 'vidbull', 'openload', - 'directo' + 'rapidvideo', + 'streamango', + 'directo', + 'torrent' ] host = 'http://www.cinecalidad.to' thumbmx = 'http://flags.fmcdn.net/data/flags/normal/mx.png' thumbes = 'http://flags.fmcdn.net/data/flags/normal/es.png' thumbbr = 'http://flags.fmcdn.net/data/flags/normal/br.png' - +current_lang = '' def mainlist(item): + global host idioma2 = "destacadas" logger.info() @@ -48,14 +52,14 @@ def mainlist(item): itemlist.append( item.clone(title="CineCalidad Latino", action="submenu", - host="http://cinecalidad.com/", + host="http://cinecalidad.to/", thumbnail=thumbmx, extra="peliculas", )) itemlist.append(item.clone(title="CineCalidad Castellano", action="submenu", - host="http://cinecalidad.com/espana/", + host="http://cinecalidad.to/espana/", thumbnail=thumbes, extra="peliculas", )) @@ -63,7 +67,7 @@ def mainlist(item): itemlist.append( item.clone(title="CineCalidad Portugues", action="submenu", - host="http://cinemaqualidade.com/", + host="http://cinemaqualidade.to/", thumbnail=thumbbr, extra="filmes", )) @@ -77,7 +81,7 @@ def submenu(item): idioma = 'peliculas' idioma2 = "destacada" host = item.host - if item.host == "http://cinemaqualidade.com/": + if item.host == "http://cinemaqualidade.to/": idioma = "filmes" idioma2 = "destacado" logger.info() @@ -106,7 +110,7 @@ def submenu(item): itemlist.append(Item(channel=item.channel, title="Por Año", action="anyos", - url=host + "/" + idioma + "-por-ano", + url=host + idioma + "-por-ano", thumbnail=get_thumb('year', auto=True), fanart='https://s8.postimg.org/7eoedwfg5/pora_o.png', )) @@ -126,7 +130,7 @@ def anyos(item): logger.info() itemlist = [] data = httptools.downloadpage(item.url).data - patron = '([^<]+) ' + patron = '([^<]+)').replace('name="q"', "") + matches = scrapertools.find_multiple_matches(bloque, 'name="([^"]+).*?value="([^"]+)') + post = "q=" + texto + "&" + for name, value in matches: + post += name + "=" + value + "&" + data = httptools.downloadpage(url_cse + post).data + cse_token = scrapertools.find_single_match(data, "var cse_token='([^']+)'") + item.url = host_search %(texto, cse_token) try: return sub_search(item) # Se captura la excepción, para no interrumpir al buscador global si un canal falla @@ -42,35 +52,31 @@ def search(item, texto): def sub_search(item): logger.info() itemlist = [] - data = httptools.downloadpage(item.url).data - patron = '(?s)clicktrackUrl":".*?q=(.*?)".*?' - patron += 'title":"([^"]+)".*?' - patron += 'cseImage":{"src":"([^"]+)"' - matches = scrapertools.find_multiple_matches(data, patron) - for scrapedurl, scrapedtitle, scrapedthumbnail in matches: - scrapedurl = scrapertools.find_single_match(scrapedurl, ".*?online/") - scrapedtitle = scrapedtitle.decode("unicode-escape").replace(" online", "").replace("", "").replace("", "") - if "ver-" not in scrapedurl: - continue - year = scrapertools.find_single_match(scrapedtitle, "\d{4}") - contentTitle = scrapedtitle.replace("(%s)" %year,"").replace("Ver","").strip() - itemlist.append(Item(action = "findvideos", - channel = item.channel, - contentTitle = contentTitle, - infoLabels = {"year":year}, - title = scrapedtitle, - thumbnail = scrapedthumbnail, - url = scrapedurl - )) - if itemlist: - page = int(scrapertools.find_single_match(item.url, ".*?start=(\d+)")) + 10 - npage = (page / 10) + 1 - item_page = scrapertools.find_single_match(item.url, "(.*?start=)") + str(page) - itemlist.append(Item(action = "sub_search", - channel = item.channel, - title = "[COLOR green]Página %s[/COLOR]" %npage, - url = item_page - )) + while True: + data = httptools.downloadpage(item.url).data + if len(data) < 500 : + break + page = int(scrapertools.find_single_match(item.url, ".*?start=(\d+)")) + item_per_page + item.url = scrapertools.find_single_match(item.url, "(.*?start=)") + str(page) + patron = '(?s)clicktrackUrl":".*?q=(.*?)".*?' + patron += 'title":"([^"]+)".*?' + patron += 'cseImage":{"src":"([^"]+)"' + matches = scrapertools.find_multiple_matches(data, patron) + for scrapedurl, scrapedtitle, scrapedthumbnail in matches: + scrapedurl = scrapertools.find_single_match(scrapedurl, ".*?online/") + scrapedtitle = scrapedtitle.decode("unicode-escape").replace(" online", "").replace("", "").replace("", "") + if "ver-" not in scrapedurl: + continue + year = scrapertools.find_single_match(scrapedtitle, "\d{4}") + contentTitle = scrapedtitle.replace("(%s)" %year,"").replace("Ver","").strip() + itemlist.append(Item(action = "findvideos", + channel = item.channel, + contentTitle = contentTitle, + infoLabels = {"year":year}, + title = scrapedtitle, + thumbnail = scrapedthumbnail, + url = scrapedurl, + )) return itemlist @@ -125,7 +131,7 @@ def peliculas(item): def findvideos(item): - logger.info("item=" + item.tostring()) + logger.info() itemlist = [] data = httptools.downloadpage(item.url).data item.plot = scrapertools.find_single_match(data, '
(.*?)
') diff --git a/plugin.video.alfa/channels/mejortorrent.py b/plugin.video.alfa/channels/mejortorrent.py index 63eced5a..af1add1f 100755 --- a/plugin.video.alfa/channels/mejortorrent.py +++ b/plugin.video.alfa/channels/mejortorrent.py @@ -106,8 +106,7 @@ def buscador(item): title = scrapertools.remove_htmltags(scrapedtitle).decode('iso-8859-1').encode('utf-8') url = urlparse.urljoin(item.url, scrapedurl) logger.debug("title=[" + title + "], url=[" + url + "]") - - itemlist.append(Item(channel=item.channel, action="play", title=title, url=url, folder=False, extra="")) + itemlist.append(Item(channel=item.channel, action="play", title=title, url=url, folder=False, extra="pelicula")) # busca docu patron = " data = scrapertools.get_match(data, @@ -245,10 +245,11 @@ def episodios(item): scrapedtitle = scrapedtitle.strip() if scrapedtitle.endswith('.'): scrapedtitle = scrapedtitle[:-1] - + #import web_pdb; web_pdb.set_trace() title = scrapedtitle + " (" + fecha + ")" - - url = host + "/secciones.php?sec=descargas&ap=contar_varios" + patron = "" + + url = "https://mejortorrent.website"+scrapertools.find_single_match(data,patron) # "episodios%5B1%5D=11744&total_capis=5&tabla=series&titulo=Sea+Patrol+-+2%AA+Temporada" post = urllib.urlencode({name: value, "total_capis": total_capis, "tabla": tabla, "titulo": titulo}) logger.debug("post=" + post) @@ -287,7 +288,7 @@ def episodios(item): itemlist.append( Item(channel=item.channel, action="play", title=title, url=url, thumbnail=item.thumbnail, plot=item.plot, - fanart=item.fanart, extra=post, folder=False)) + fanart=item.fanart, extra=post, folder=False, id=value)) return itemlist @@ -328,20 +329,49 @@ def show_movie_info(item): def play(item): + #import web_pdb; web_pdb.set_trace() logger.info() itemlist = [] - if item.extra == "": - itemlist.append(Item(channel=item.channel, action="play", server="torrent", title=item.title, url=item.url, - thumbnail=item.thumbnail, plot=item.plot, fanart=item.fanart, folder=False)) + if item.extra == "pelicula": + #itemlist.append(Item(channel=item.channel, action="play", server="torrent", title=item.title, url=item.url, + # thumbnail=item.thumbnail, plot=item.plot, fanart=item.fanart, folder=False)) + data = httptools.downloadpage(item.url).data + logger.debug("data=" + data) + #url https://mejortorrent.website/peli-descargar-torrent-16443-Thor-Ragnarok.html + patron = "https://mejortorrent.website/peli-descargar-torrent-((.*?))-" + newid = scrapertools.find_single_match(item.url, patron) + + + + #params = dict(urlparse.parse_qsl(item.extra)) + patron = "https://mejortorrent.website/secciones.php?sec=descargas&ap=contar&tabla=peliculas&id=" + newid[0] + "&link_bajar=1" + #https://mejortorrent.website/secciones.php?sec=descargas&ap=contar&tabla=peliculas&id=16443&link_bajar=1 + #link=scrapertools.find_single_match(data,patron) + #data = httptools.downloadpage(link).data + + + data = httptools.downloadpage(patron).data + patron = "Pincha " + link = "https://mejortorrent.website" + scrapertools.find_single_match(data, patron) + logger.info("link=" + link) + itemlist.append(Item(channel=item.channel, action="play", server="torrent", title=item.title, url=link, + thumbnail=item.thumbnail, plot=item.plot, folder=False)) else: - data = httptools.downloadpage(item.url, post=item.extra).data + #data = httptools.downloadpage(item.url, post=item.extra).data + data = httptools.downloadpage(item.url).data logger.debug("data=" + data) params = dict(urlparse.parse_qsl(item.extra)) - patron = '" + link = "https://mejortorrent.website" + scrapertools.find_single_match(data, patron) logger.info("link=" + link) itemlist.append(Item(channel=item.channel, action="play", server="torrent", title=item.title, url=link, thumbnail=item.thumbnail, plot=item.plot, folder=False)) diff --git a/plugin.video.alfa/channels/pelisadicto.json b/plugin.video.alfa/channels/pelisadicto.json deleted file mode 100755 index 0d277199..00000000 --- a/plugin.video.alfa/channels/pelisadicto.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "id": "pelisadicto", - "name": "Pelisadicto", - "active": true, - "adult": false, - "language": ["cast", "lat"], - "thumbnail": "pelisadicto.png", - "banner": "pelisadicto.png", - "categories": [ - "movie" - ], - "settings": [ - { - "id": "include_in_global_search", - "type": "bool", - "label": "Incluir en busqueda global", - "default": false, - "enabled": true, - "visible": true - } - ] -} \ No newline at end of file diff --git a/plugin.video.alfa/channels/pelisadicto.py b/plugin.video.alfa/channels/pelisadicto.py deleted file mode 100755 index 93996336..00000000 --- a/plugin.video.alfa/channels/pelisadicto.py +++ /dev/null @@ -1,220 +0,0 @@ -# -*- coding: utf-8 -*- - -import re -import urlparse - -from core import scrapertools -from core import servertools -from core.item import Item -from platformcode import config, logger - - -def mainlist(item): - logger.info() - - itemlist = [] - itemlist.append( - Item(channel=item.channel, title="Últimas agregadas", action="agregadas", url="http://pelisadicto.com", - viewmode="movie_with_plot")) - itemlist.append( - Item(channel=item.channel, title="Listado por género", action="porGenero", url="http://pelisadicto.com")) - itemlist.append(Item(channel=item.channel, title="Buscar", action="search", url="http://pelisadicto.com")) - - return itemlist - - -def porGenero(item): - logger.info() - - itemlist = [] - itemlist.append( - Item(channel=item.channel, action="agregadas", title="Acción", url="http://pelisadicto.com/genero/Acción/1", - viewmode="movie_with_plot")) - if config.get_setting("adult_mode") != 0: - itemlist.append( - Item(channel=item.channel, action="agregadas", title="Adulto", url="http://pelisadicto.com/genero/Adulto/1", - viewmode="movie_with_plot")) - itemlist.append(Item(channel=item.channel, action="agregadas", title="Animación", - url="http://pelisadicto.com/genero/Animación/1", viewmode="movie_with_plot")) - itemlist.append( - Item(channel=item.channel, action="agregadas", title="Aventura", url="http://pelisadicto.com/genero/Aventura/1", - viewmode="movie_with_plot")) - itemlist.append(Item(channel=item.channel, action="agregadas", title="Biográfico", - url="http://pelisadicto.com/genero/Biográfico/1", viewmode="movie_with_plot")) - itemlist.append(Item(channel=item.channel, action="agregadas", title="Ciencia Ficción", - url="http://pelisadicto.com/genero/Ciencia Ficción/1", viewmode="movie_with_plot")) - itemlist.append(Item(channel=item.channel, action="agregadas", title="Cine Negro", - url="http://pelisadicto.com/genero/Cine Negro/1", viewmode="movie_with_plot")) - itemlist.append( - Item(channel=item.channel, action="agregadas", title="Comedia", url="http://pelisadicto.com/genero/Comedia/1", - viewmode="movie_with_plot")) - itemlist.append( - Item(channel=item.channel, action="agregadas", title="Corto", url="http://pelisadicto.com/genero/Corto/1", - viewmode="movie_with_plot")) - itemlist.append( - Item(channel=item.channel, action="agregadas", title="Crimen", url="http://pelisadicto.com/genero/Crimen/1", - viewmode="movie_with_plot")) - itemlist.append( - Item(channel=item.channel, action="agregadas", title="Deporte", url="http://pelisadicto.com/genero/Deporte/1", - viewmode="movie_with_plot")) - itemlist.append(Item(channel=item.channel, action="agregadas", title="Documental", - url="http://pelisadicto.com/genero/Documental/1", viewmode="movie_with_plot")) - itemlist.append( - Item(channel=item.channel, action="agregadas", title="Drama", url="http://pelisadicto.com/genero/Drama/1", - viewmode="movie_with_plot")) - itemlist.append( - Item(channel=item.channel, action="agregadas", title="Familiar", url="http://pelisadicto.com/genero/Familiar/1", - viewmode="movie_with_plot")) - itemlist.append( - Item(channel=item.channel, action="agregadas", title="Fantasía", url="http://pelisadicto.com/genero/Fantasía/1", - viewmode="movie_with_plot")) - itemlist.append( - Item(channel=item.channel, action="agregadas", title="Guerra", url="http://pelisadicto.com/genero/Guerra/1", - viewmode="movie_with_plot")) - itemlist.append( - Item(channel=item.channel, action="agregadas", title="Historia", url="http://pelisadicto.com/genero/Historia/1", - viewmode="movie_with_plot")) - itemlist.append( - Item(channel=item.channel, action="agregadas", title="Misterio", url="http://pelisadicto.com/genero/Misterio/1", - viewmode="movie_with_plot")) - itemlist.append( - Item(channel=item.channel, action="agregadas", title="Música", url="http://pelisadicto.com/genero/Música/1", - viewmode="movie_with_plot")) - itemlist.append( - Item(channel=item.channel, action="agregadas", title="Musical", url="http://pelisadicto.com/genero/Musical/1", - viewmode="movie_with_plot")) - itemlist.append( - Item(channel=item.channel, action="agregadas", title="Romance", url="http://pelisadicto.com/genero/Romance/1", - viewmode="movie_with_plot")) - itemlist.append( - Item(channel=item.channel, action="agregadas", title="Terror", url="http://pelisadicto.com/genero/Terror/1", - viewmode="movie_with_plot")) - itemlist.append( - Item(channel=item.channel, action="agregadas", title="Thriller", url="http://pelisadicto.com/genero/Thriller/1", - viewmode="movie_with_plot")) - itemlist.append( - Item(channel=item.channel, action="agregadas", title="Western", url="http://pelisadicto.com/genero/Western/1", - viewmode="movie_with_plot")) - - return itemlist - - -def search(item, texto): - logger.info() - - ''' - texto_get = texto.replace(" ","%20") - texto_post = texto.replace(" ","+") - item.url = "http://pelisadicto.com/buscar/%s?search=%s" % (texto_get,texto_post) - ''' - - texto = texto.replace(" ", "+") - item.url = "http://pelisadicto.com/buscar/%s" % texto - - try: - return agregadas(item) - # Se captura la excepci?n, para no interrumpir al buscador global si un canal falla - except: - import sys - for line in sys.exc_info(): - logger.error("%s" % line) - return [] - - -def agregadas(item): - logger.info() - itemlist = [] - ''' - # Descarga la pagina - if "?search=" in item.url: - url_search = item.url.split("?search=") - data = scrapertools.cache_page(url_search[0], url_search[1]) - else: - data = scrapertools.cache_page(item.url) - logger.info("data="+data) - ''' - - data = scrapertools.cache_page(item.url) - # logger.info("data="+data) - - # Extrae las entradas - fichas = re.sub(r"\n|\s{2}", "", scrapertools.get_match(data, '
    (.*?)
')) - - #
  • 101 dálmatas
    DVD
    101 dálmatas
  • - - patron = 'href="([^"]+)".*?' # url - patron += 'src="([^"]+)" ' # thumbnail - patron += 'alt="([^"]+)' # title - - matches = re.compile(patron, re.DOTALL).findall(fichas) - for url, thumbnail, title in matches: - url = urlparse.urljoin(item.url, url) - thumbnail = urlparse.urljoin(url, thumbnail) - - itemlist.append(Item(channel=item.channel, action="findvideos", title=title + " ", fulltitle=title, url=url, - thumbnail=thumbnail, show=title)) - - # Paginación - try: - - # - - current_page_number = int(scrapertools.get_match(item.url, '/(\d+)$')) - item.url = re.sub(r"\d+$", "%s", item.url) - next_page_number = current_page_number + 1 - next_page = item.url % (next_page_number) - itemlist.append(Item(channel=item.channel, action="agregadas", title="Página siguiente >>", url=next_page, - viewmode="movie_with_plot")) - except: - pass - - return itemlist - - -def findvideos(item): - logger.info() - - itemlist = [] - plot = "" - - data = re.sub(r"\n|\s{2}", "", scrapertools.cache_page(item.url)) - - #

    Sinopsis de 101 dálmatas

    Pongo y Perdita, los dálmatas protagonistas, son una feliz pareja canina que vive rodeada de sus cachorros y con sus amos Roger y Anita. Pero su felicidad está amenazada. Cruella de Ville, una pérfida mujer que vive en una gran mansión y adora los abrigos de pieles, se entera de que los protagonistas tienen quince cachorros dálmatas. Entonces, la idea de secuestrarlos para hacerse un exclusivo abrigo de pieles se convierte en una obsesión enfermiza. Para hacer realidad su sueño contrata a dos ladrones.

    - - patron = " " - patron += "

    [^<]+

    " - patron += "

    ([^<]+)

    " - matches = re.compile(patron, re.DOTALL).findall(data) - if matches: - plot = matches[0] - - # Descarga la pagina - data = scrapertools.cache_page(item.url) - patron = '.*?' - patron += '(.*?).*?(.*?).*?' - matches = re.compile(patron, re.DOTALL).findall(data) - for scrapedidioma, scrapedcalidad, scrapedserver, scrapedurl in matches: - idioma = "" - if "/img/1.png" in scrapedidioma: idioma = "Castellano" - if "/img/2.png" in scrapedidioma: idioma = "Latino" - if "/img/3.png" in scrapedidioma: idioma = "Subtitulado" - title = item.title + " [" + scrapedcalidad + "][" + idioma + "][" + scrapedserver + "]" - - itemlist.append( - Item(channel=item.channel, action="play", title=title, fulltitle=title, url=scrapedurl, thumbnail="", - plot=plot, show=item.show)) - return itemlist - - -def play(item): - logger.info() - - itemlist = servertools.find_video_items(data=item.url) - - for videoitem in itemlist: - videoitem.title = item.title - videoitem.fulltitle = item.fulltitle - videoitem.thumbnail = item.thumbnail - videoitem.channel = item.channel - - return itemlist diff --git a/plugin.video.alfa/channels/pelismagnet.py b/plugin.video.alfa/channels/pelismagnet.py index 3adda429..d0cd6fc4 100644 --- a/plugin.video.alfa/channels/pelismagnet.py +++ b/plugin.video.alfa/channels/pelismagnet.py @@ -171,7 +171,7 @@ def episodios(item): # post = "page=%s&x=34&y=14" % urllib.quote(item.url) # response = httptools.downloadpage(url, post, follow_redirects=False).data # url = scrapertools.find_single_match(response, 'Por inicial(.*?)') - logger.info("data=" + data) - - patronvideos = '
  • ([^<]+)' - matches = re.compile(patronvideos, re.DOTALL).findall(data) - - for scrapedurl, scrapedtitle in matches: - title = scrapedtitle - plot = "" - url = urlparse.urljoin(item.url, scrapedurl) - thumbnail = "" - logger.debug("title=[" + title + "], url=[" + url + "], thumbnail=[" + thumbnail + "]") - - itemlist.append( - Item(channel=item.channel, action='series', title=title, url=url, thumbnail=thumbnail, plot=plot)) - - return itemlist - - -def series(item): - logger.info() - itemlist = [] - - ''' -
  • - - Justicia ciega ( Blind Justuce ) - ''' - - data = scrapertools.cachePage(item.url) - logger.info("data=" + data) - - patron = '
  • - Saving Hope 1x02 -
    - -    - - ''' - - data = scrapertools.cachePage(item.url) - - patron = ' 0: - itemlist.append(Item(channel=item.channel, title="Añadir esta serie a la videoteca", url=item.url, - action="add_serie_to_library", extra="episodios", show=item.show)) - itemlist.append(Item(channel=item.channel, title="Descargar todos los episodios de la serie", url=item.url, - action="download_all_episodes", extra="episodios", show=item.show)) - - return itemlist - - -def extrae_idiomas(bloqueidiomas): - logger.info("idiomas=" + bloqueidiomas) - patronidiomas = '([a-z0-9]+).png"' - idiomas = re.compile(patronidiomas, re.DOTALL).findall(bloqueidiomas) - textoidiomas = "" - language=[] - for idioma in idiomas: - if idioma == "1": - textoidiomas = textoidiomas + "Español" + "/" - if idioma == "2": - textoidiomas = textoidiomas + "Latino" + "/" - if idioma == "3": - textoidiomas = textoidiomas + "VOSE" + "/" - if idioma == "4": - textoidiomas = textoidiomas + "VO" + "/" - language.append(codigo_a_idioma(idioma)) - textoidiomas = textoidiomas[:-1] - return textoidiomas, language - - -def codigo_a_idioma(codigo): - idioma = "" - if codigo == "1": - idioma = "Español" - if codigo == "2": - idioma = "Latino" - if codigo == "3": - idioma = "VOSE" - if codigo == "4": - idioma = "VO" - - return idioma - - -def findvideos(item): - logger.info() - itemlist = [] - - ''' - - - Nowvideo - Reproducir - - - ''' - # Descarga la pagina - data = scrapertools.cachePage(item.url) - - patron = '(.+?)<\/ul>' #Filtrado por url + data_cat = scrapertools.find_single_match(data, patron) + patron_cat='
  • <\/li>' + matches = scrapertools.find_multiple_matches(data_cat, patron_cat) + for scrapedurl, scrapedtitle in matches: + itemlist.append(item.clone(title=scrapedtitle, url=scrapedurl,action="listado")) + return itemlist + +def listado(item): + logger.info() + itemlist = [] + data = httptools.downloadpage(item.url).data + data = re.sub(r"\n|\r|\t|\s{2}| ", "", data) + patron_data='
      (.+?)
    ' + data_listado = scrapertools.find_single_match(data, patron_data) + patron_listado='