diff --git a/plugin.video.alfa/channels/pepecine.py b/plugin.video.alfa/channels/pepecine.py index fc96c93d..304c15c7 100755 --- a/plugin.video.alfa/channels/pepecine.py +++ b/plugin.video.alfa/channels/pepecine.py @@ -355,8 +355,6 @@ def findvideos(item): except: return itemlist # Devolvemos lista vacia - lista_servers = servertools.get_servers_list() - for link in data_dict["link"]: if item.contentType == 'episode' \ and (item.contentSeason != link['season'] or item.contentEpisodeNumber != link['episode']): @@ -367,17 +365,17 @@ def findvideos(item): flag = scrapertools.find_single_match(link["label"], '(\s*\)') idioma = link["label"].replace(flag, "") if link["quality"] != "?": - calidad = (' [' + link["quality"] + ']') + calidad = (link["quality"]) else: calidad = "" - video = find_videos(link["url"], lista_servers) + itemlist.extend(servertools.find_video_items(data=url)) - if video["servidor"] != "": - servidor = video["servidor"] - url = video["url"] - title = "Ver en " + servidor.capitalize() + calidad + ' (' + idioma + ')' - itemlist.append(item.clone(action="play", viewmode="list", server=servidor, title=title, - text_color="0xFF994D00", url=url, folder=False)) + for videoitem in itemlist: + videoitem.channel = item.channel + videoitem.quality = calidad + videoitem.language = idioma + videoitem.contentTitle = item.title + itemlist = servertools.get_servers_itemlist(itemlist) if config.get_videolibrary_support() and itemlist and item.contentType == "movie": infoLabels = {'tmdb_id': item.infoLabels['tmdb_id'], @@ -390,40 +388,6 @@ def findvideos(item): return itemlist -def find_videos(url, lista_servers): - # logger.info() - ret = {'titulo': "", - 'url': "", - 'servidor': ""} - - # Ejecuta el find_videos en cada servidor hasta que encuentra una coicidencia - for serverid in lista_servers: - try: - servers_module = __import__("servers." + serverid) - server_module = getattr(servers_module, serverid) - devuelve = server_module.find_videos(url) - - if devuelve: - ret["titulo"] = devuelve[0][0] - ret["url"] = devuelve[0][1] - ret["servidor"] = devuelve[0][2] - # reordenar el listado, es probable q el proximo enlace sea del mismo servidor - lista_servers.remove(serverid) - lista_servers.insert(0, serverid) - break - - except ImportError: - logger.error("No existe conector para #" + serverid + "#") - # import traceback - # logger.info(traceback.format_exc()) - except: - logger.error("Error en el conector #" + serverid + "#") - import traceback - logger.error(traceback.format_exc()) - - return ret - - def episodios(item): # Necesario para las actualizaciones automaticas return get_temporadas(Item(channel=__chanel__, url=item.url, show=item.show, extra="serie_add")) diff --git a/plugin.video.alfa/channels/qserie.py b/plugin.video.alfa/channels/qserie.py index d30d6868..1dae555b 100755 --- a/plugin.video.alfa/channels/qserie.py +++ b/plugin.video.alfa/channels/qserie.py @@ -60,18 +60,15 @@ def todas(item): idioma = scrapertools.decodeHtmlentities(idioma) url = urlparse.urljoin(item.url, scrapedurl) year = scrapedyear - if idioma in audio: - idioma = audio[idioma] - else: - idioma = audio['Sub Español'] - title = scrapertools.decodeHtmlentities(scrapedtitle) + ' (' + idioma + ')' + title = scrapertools.decodeHtmlentities(scrapedtitle) thumbnail = scrapedthumbnail plot = scrapedplot fanart = 'https://s31.postimg.org/dousrbu9n/qserie.png' itemlist.append( Item(channel=item.channel, action="temporadas", title=title, url=url, thumbnail=thumbnail, plot=plot, - fanart=fanart, extra=idioma, contentSerieName=scrapedtitle, infoLabels={'year': year})) + fanart=fanart, extra=idioma, contentSerieName=scrapedtitle, infoLabels={'year': year}, + language=idioma)) tmdb.set_infoLabels_itemlist(itemlist, seekTmdb=True) # Paginacion siguiente = '' diff --git a/plugin.video.alfa/channels/repelis.py b/plugin.video.alfa/channels/repelis.py old mode 100755 new mode 100644 index 67bc251a..a80b4fec --- a/plugin.video.alfa/channels/repelis.py +++ b/plugin.video.alfa/channels/repelis.py @@ -5,6 +5,8 @@ import urlparse from core import scrapertools from core import servertools +from core import httptools +from core import tmdb from core.item import Item from platformcode import config, logger @@ -19,130 +21,107 @@ def mainlist(item): mifan = "http://www.psicocine.com/wp-content/uploads/2013/08/Bad_Robot_Logo.jpg" itemlist.append(Item(channel=item.channel, action="menupelis", title="Peliculas", url="http://www.repelis.tv/pag/1", - thumbnail="http://www.gaceta.es/sites/default/files/styles/668x300/public/metro_goldwyn_mayer_1926-web.png?itok=-lRSR9ZC", + thumbnail="http://www.gaceta.es/sites/default/files/styles/668x300/public" + "/metro_goldwyn_mayer_1926-web.png?itok=-lRSR9ZC", fanart=mifan)) itemlist.append(Item(channel=item.channel, action="menuestre", title="Estrenos", url="http://www.repelis.tv/archivos/estrenos/pag/1", - thumbnail="http://t0.gstatic.com/images?q=tbn:ANd9GcS4g68rmeLQFuX7iCrPwd00FI_OlINZXCYXEFrJHTZ0VSHefIIbaw", + thumbnail="http://t0.gstatic.com/images?q=tbn" + ":ANd9GcS4g68rmeLQFuX7iCrPwd00FI_OlINZXCYXEFrJHTZ0VSHefIIbaw", fanart=mifan)) itemlist.append( - Item(channel=item.channel, action="menudesta", title="Destacadas", url="http://www.repelis.tv/pag/1", - thumbnail="http://img.irtve.es/v/1074982/", fanart=mifan)) - itemlist.append(Item(channel=item.channel, action="todaspelis", title="Proximos estrenos", + Item(channel=item.channel, action="menudesta", title="Destacadas", url="http://www.repelis.tv/pag/1", + thumbnail="http://img.irtve.es/v/1074982/", fanart=mifan)) + itemlist.append(Item(channel=item.channel, action="menupelis", title="Proximos estrenos", url="http://www.repelis.tv/archivos/proximos-estrenos/pag/1", - thumbnail="https://encrypted-tbn3.gstatic.com/images?q=tbn:ANd9GcTpsRC-GTYzCqhor2gIDfAB61XeymwgXWSVBHoRAKs2c5HAn29f&reload=on", + thumbnail="https://encrypted-tbn3.gstatic.com/images?q=tbn:ANd9GcTpsRC" + "-GTYzCqhor2gIDfAB61XeymwgXWSVBHoRAKs2c5HAn29f&reload=on", fanart=mifan)) - itemlist.append( - Item(channel=item.channel, action="todaspelis", title="Todas las Peliculas", url="http://www.repelis.tv/pag/1", - thumbnail="https://freaksociety.files.wordpress.com/2012/02/logos-cine.jpg", fanart=mifan)) + itemlist.append(Item(channel=item.channel, action="menupelis", title="Todas las Peliculas", + url="http://www.repelis.tv/pag/1", + thumbnail="https://freaksociety.files.wordpress.com/2012/02/logos-cine.jpg", fanart=mifan)) if config.get_setting("adult_mode") != 0: - itemlist.append(Item(channel=item.channel, action="todaspelis", title="Eroticas +18", + itemlist.append(Item(channel=item.channel, action="menupelis", title="Eroticas +18", url="http://www.repelis.tv/genero/eroticas/pag/1", thumbnail="http://www.topkamisetas.com/catalogo/images/TB0005.gif", - fanart="http://www.topkamisetas.com/catalogo/images/TB0005.gif")) - # Quito la busqueda por año si no esta enabled el adultmode, porque no hay manera de filtrar los enlaces eroticos72 + fanart="http://www.topkamisetas.com/catalogo/images/TB0005.gif", extra='adult')) + # Quito la busqueda por año si no esta enabled el adultmode, porque no hay manera de filtrar los enlaces + # eroticos72 itemlist.append( - Item(channel=item.channel, action="poranyo", title="Por Año", url="http://www.repelis.tv/anio/2016", - thumbnail="http://t3.gstatic.com/images?q=tbn:ANd9GcSkxiYXdBcI0cvBLsb_nNlz_dWXHRl2Q-ER9dPnP1gNUudhrqlR", - fanart=mifan)) + Item(channel=item.channel, action="poranyo", title="Por Año", url="http://www.repelis.tv/anio/2016", + thumbnail="http://t3.gstatic.com/images?q=tbn:ANd9GcSkxiYXdBcI0cvBLsb_nNlz_dWXHRl2Q" + "-ER9dPnP1gNUudhrqlR", + fanart=mifan)) # Por categoria si que filtra la categoria de eroticos itemlist.append(Item(channel=item.channel, action="porcateg", title="Por Categoria", url="http://www.repelis.tv/genero/accion/pag/1", - thumbnail="http://www.logopro.it/blog/wp-content/uploads/2013/07/categoria-sigaretta-elettronica.png", + thumbnail="http://www.logopro.it/blog/wp-content/uploads/2013/07/categoria-sigaretta" + "-elettronica.png", fanart=mifan)) itemlist.append( - Item(channel=item.channel, action="search", title="Buscar...", url="http://www.repelis.tv/search/?s=", - thumbnail="http://thumbs.dreamstime.com/x/buscar-pistas-13159747.jpg", fanart=mifan)) + Item(channel=item.channel, action="search", title="Buscar...", url="http://www.repelis.tv/search/?s=", + thumbnail="http://thumbs.dreamstime.com/x/buscar-pistas-13159747.jpg", fanart=mifan)) return itemlist -# Peliculas recien agregadas ( quitamos las de estreno del slide-bar en el top + def menupelis(item): logger.info(item.url) itemlist = [] - data = scrapertools.cache_page(item.url).decode('iso-8859-1').encode('utf-8') + data = httptools.downloadpage(item.url).data.decode('iso-8859-1').encode('utf-8') + + if item.extra == '': + section = 'Recién Agregadas' + elif item.extra == 'year': + section = 'del Año \d{4}' + elif item.extra == 'adult': + section = 'de Eróticas \+18' + else: + section = 'de %s'%item.extra + + patronenlaces = 'Películas %s<\/h.>.*?>(.*?)<\/section>'%section + - patronenlaces = '

Películas Recién Agregadas

.*?>(.*?)' matchesenlaces = re.compile(patronenlaces, re.DOTALL).findall(data) - logger.info("begin ----------") - scrapertools.printMatches(matchesenlaces) - logger.info("end ----------") - for bloque_enlaces in matchesenlaces: patron = '
.*?' - patron += 'Calidad (.*?)<') + year = scrapertools.find_single_match(extra_info, '"anio">(\d{4})<') + language = scrapertools.find_multiple_matches(extra_info, 'class="(latino|espanol|subtitulado)"') + # if language = 'ingles': + # language='vo' + new_item=Item(channel=item.channel, action="findvideos", title=title, fulltitle=title, url=url, + thumbnail=thumbnail, fanart=thumbnail, language=language, quality=quality, + infoLabels={'year': year}) + if year: + tmdb.set_infoLabels_item(new_item) - ## Paginación - # 2> Página siguiente" try: next_page = scrapertools.get_match(data, '\d+2> Página siguiente" - try: - next_page = scrapertools.get_match(data, '\d+Calidad (.*?)<') + year = scrapertools.find_single_match(extra_info, '"anio">(\d{4})<') + language = scrapertools.find_single_match(extra_info, 'class="(latino|espanol|subtitulado)"') + itemlist.append(Item(channel=item.channel, action="findvideos", title=title, fulltitle=title, url=url, - thumbnail=thumbnail, fanart=thumbnail)) + thumbnail=thumbnail, fanart=thumbnail, language=language, quality=quality, + infoLabels={'year': year})) ## Paginación # 2Sinopsis

(.*?)

-
-

Titulo en Español

-

Abzurdah

-

Titulo Original

-

Abzurdah

-

Año de Lanzamiento

-

2015

-

Generos

-

Romance

-

Idioma

-

Latino

-

Calidad

-

DVD-Rip

- ''' - - # estos son los datos para plot patron = '

Sinopsis

.*?

(.*?)

.*?
.*?

(.*?)

' # titulo matches = re.compile(patron, re.DOTALL).findall(data) - scrapertools.printMatches(matches) for sinopsis, title in matches: title = "[COLOR white][B]" + title + "[/B][/COLOR]" patron = '
(.*?)
' matches = re.compile(patron, re.DOTALL).findall(data) - scrapertools.printMatches(matches) for scrapedplot in matches: splot = title + "\n\n" plot = scrapedplot @@ -273,37 +236,45 @@ def findvideos(item): patron = '(.*?)' matchesx = re.compile(patron, re.DOTALL).findall(data) - scrapertools.printMatches(matchesx) for bloq in matchesx: patron = 'href="(.*?)".*?0 0">(.*?)(.*?)(.*?)<' matches = re.compile(patron, re.DOTALL).findall(bloq) - # scrapertools.printMatches(matches) for scrapedurl, scrapedserver, scrapedlang, scrapedquality in matches: url = urlparse.urljoin(item.url, scrapedurl) logger.info("Lang:[" + scrapedlang + "] Quality[" + scrapedquality + "] URL[" + url + "]") patronenlaces = '.*?://(.*?)/' matchesenlaces = re.compile(patronenlaces, re.DOTALL).findall(scrapedurl) - scrapertools.printMatches(matchesenlaces) scrapedtitle = "" + if scrapedserver == 'Vimple': + scrapedserver = 'vimpleru' + elif scrapedserver == 'Ok.ru': + scrapedserver = 'okru' + server = servertools.get_server_name(scrapedserver) for scrapedenlace in matchesenlaces: scrapedtitle = title + " [COLOR white][ [/COLOR]" + "[COLOR green]" + scrapedquality + "[/COLOR]" + "[COLOR white] ][/COLOR]" + " [COLOR red] [" + scrapedlang + "][/COLOR] » " + scrapedserver - itemlist.append( - Item(channel=item.channel, action="play", title=scrapedtitle, extra=title, url=url, fanart=item.thumbnail, - thumbnail=item.thumbnail, plot=splot, folder=False)) + + itemlist.append(Item(channel=item.channel, action="play", title=scrapedtitle, extra=title, url=url, + fanart=item.thumbnail, thumbnail=item.thumbnail, plot=splot, language=scrapedlang, + quality=scrapedquality, server=server)) return itemlist def play(item): - logger.info("url=" + item.url) + logger.info() + itemlist =[] - # itemlist = servertools.find_video_items(data=item.url) + data = httptools.downloadpage(item.url).data - url = scrapertools.find_single_match(scrapertools.cache_page(item.url), '