# -*- coding: utf-8 -*- import os import re import unicodedata import urllib import urlparse import xbmc import xbmcgui from core import httptools from core import scrapertools from core.item import Item from core.scrapertools import decodeHtmlentities as dhe from platformcode import config, logger ACTION_SHOW_FULLSCREEN = 36 ACTION_GESTURE_SWIPE_LEFT = 511 ACTION_SELECT_ITEM = 7 ACTION_PREVIOUS_MENU = 10 ACTION_MOVE_LEFT = 1 ACTION_MOVE_RIGHT = 2 ACTION_MOVE_DOWN = 4 ACTION_MOVE_UP = 3 OPTION_PANEL = 6 OPTIONS_OK = 5 host = "http://www.zentorrents.com/" api_key = "2e2160006592024ba87ccdf78c28f49f" api_fankey = "dffe90fba4d02c199ae7a9e71330c987" def mainlist(item): logger.info() itemlist = [] itemlist.append( Item(channel=item.channel, title="Películas", action="peliculas", url="http://www.zentorrents.com/peliculas", thumbnail="http://www.navymwr.org/assets/movies/images/img-popcorn.png", fanart="http://s18.postimg.org/u9wyvm809/zen_peliculas.jpg")) itemlist.append( Item(channel=item.channel, title="MicroHD", action="peliculas", url="http://www.zentorrents.com/tags/microhd", thumbnail="http://s11.postimg.org/5s67cden7/microhdzt.jpg", fanart="http://s9.postimg.org/i5qhadsjj/zen_1080.jpg")) itemlist.append( Item(channel=item.channel, title="HDrip", action="peliculas", url="http://www.zentorrents.com/tags/hdrip", thumbnail="http://s10.postimg.org/pft9z4c5l/hdripzent.jpg", fanart="http://s15.postimg.org/5kqx9ln7v/zen_720.jpg")) itemlist.append( Item(channel=item.channel, title="Series", action="peliculas", url="http://www.zentorrents.com/series", thumbnail="http://imgur.com/HbM2dt5.png", fanart="http://s10.postimg.org/t0xz1t661/zen_series.jpg")) itemlist.append(Item(channel=item.channel, title="Buscar...", action="search", url="", thumbnail="http://newmedia-art.pl/product_picture/full_size/bed9a8589ad98470258899475cf56cca.jpg", fanart="http://s23.postimg.org/jdutugvrf/zen_buscar.jpg")) return itemlist def search(item, texto): logger.info() texto = texto.replace(" ", "+") item.url = "http://www.zentorrents.com//buscar?searchword=%s&ordering=&searchphrase=all&limit=\d+" % (texto) # item.url = item.url % texto # itemlist.extend(buscador(item, texto.replace("+", " "))) item.extra = str(texto) try: return buscador(item) except: import sys for line in sys.exc_info(): logger.error("%s" % line) return [] def buscador(item): logger.info() itemlist = [] # Descarga la página data = httptools.downloadpage(item.url).data data = re.sub(r"\n|\r|\t|\s{2}| ", "", data) pepe = item.extra pepe = pepe.replace("+", " ") if "highlight" in data: searchword = scrapertools.get_match(data, '([^<]+)') data = re.sub(r'[^<]+', searchword, data) patron = '
|&|amp;", "", data) #
![En Un Patio De Paris [DVD Rip]](http://www.zentorrents.com/images/articles/17/17937t.jpg)
![En Un Patio De Paris [DVD Rip]](http://www.zentorrents.com/images/articles/17/17937t.jpg)
(.*?)
') sinopsis = re.sub(r"<\p>
", "", sinopsis) except: sinopsis = "" if not "series" in item.url: # filmafinity title = re.sub(r"cerdas", "cuerdas", title) url_bing = "http://www.bing.com/search?q=%s+site:filmaffinity.com" % (title.replace(' ', '+')) data = browser(url_bing) data = re.sub(r"\n|\r|\t|\s{2}| |", "", data) try: if "myaddrproxy.php" in data: subdata_bing = scrapertools.get_match(data, 'li class="b_algo">
|
", "", plot) if item.extra.split("|")[7] != "": tagline = item.extra.split("|")[7] # tagline= re.sub(r',','.',tagline) else: tagline = "" except: title = "[COLOR red][B]LO SENTIMOS...[/B][/COLOR]" plot = "Esta pelicula no tiene informacion..." plot = plot.replace(plot, "[COLOR yellow][B]" + plot + "[/B][/COLOR]") photo = "http://s6.postimg.org/nm3gk1xox/noinfosup2.png" foto = "http://s6.postimg.org/ub7pb76c1/noinfo.png" info = "" if "serie" in item.url: check2 = "serie" icon = "http://s6.postimg.org/hzcjag975/tvdb.png" foto = item.show.split("|")[1] if item.extra.split("|")[5] != "": critica = item.extra.split("|")[5] else: critica = "Esta serie no tiene críticas..." photo = item.extra.split("|")[0].replace(" ", "%20") try: tagline = "[COLOR aquamarine][B]" + tagline + "[/B][/COLOR]" except: tagline = "" else: critica = item.extra.split("|")[5] if "%20" in critica: critica = "No hay críticas" icon = "http://imgur.com/SenkyxF.png" photo = item.extra.split("|")[0].replace(" ", "%20") foto = item.show.split("|")[1] try: if tagline == "\"\"": tagline = " " except: tagline = " " tagline = "[COLOR aquamarine][B]" + tagline + "[/B][/COLOR]" check2 = "pelicula" # Tambien te puede interesar peliculas = [] if "serie" in item.url: url_tpi = "http://api.themoviedb.org/3/tv/" + item.show.split("|")[ 5] + "/recommendations?api_key=" + api_key + "&language=es" data_tpi = httptools.downloadpage(url_tpi).data tpi = scrapertools.find_multiple_matches(data_tpi, 'id":(.*?),.*?"original_name":"(.*?)",.*?"poster_path":(.*?),"popularity"') else: url_tpi = "http://api.themoviedb.org/3/movie/" + item.extra.split("|")[ 1] + "/recommendations?api_key=" + api_key + "&language=es" data_tpi = httptools.downloadpage(url_tpi).data tpi = scrapertools.find_multiple_matches(data_tpi, 'id":(.*?),.*?"original_title":"(.*?)",.*?"poster_path":(.*?),"popularity"') for idp, peli, thumb in tpi: thumb = re.sub(r'"|}', '', thumb) if "null" in thumb: thumb = "http://s6.postimg.org/tw1vhymj5/noposter.png" else: thumb = "https://image.tmdb.org/t/p/original" + thumb peliculas.append([idp, peli, thumb]) check2 = check2.replace("pelicula", "movie").replace("serie", "tvshow") infoLabels = {'title': title, 'plot': plot, 'thumbnail': photo, 'fanart': foto, 'tagline': tagline, 'rating': rating} item_info = item.clone(info=infoLabels, icon=icon, extra=id, rating=rating, rating_filma=rating_filma, critica=critica, contentType=check2, thumb_busqueda="http://imgur.com/OZ1Vg3D.png") from channels import infoplus infoplus.start(item_info, peliculas) def info_capitulos(item): logger.info() url = "https://api.themoviedb.org/3/tv/" + item.show.split("|")[5] + "/season/" + item.extra.split("|")[ 2] + "/episode/" + item.extra.split("|")[3] + "?api_key=" + api_key + "&language=es" if "/0" in url: url = url.replace("/0", "/") data = httptools.downloadpage(url).data data = re.sub(r"\n|\r|\t|\s{2}| ", "", data) patron = '],"name":"(.*?)","overview":"(.*?)".*?"still_path":(.*?),"vote_average":(\d+\.\d).*?,"' matches = re.compile(patron, re.DOTALL).findall(data) if len(matches) == 0: url = "http://thetvdb.com/api/1D62F2F90030C444/series/" + item.category + "/default/" + item.extra.split("|")[ 2] + "/" + item.extra.split("|")[3] + "/es.xml" if "/0" in url: url = url.replace("/0", "/") data = httptools.downloadpage(url).data data = re.sub(r"\n|\r|\t|\s{2}| ", "", data) patron = '.*?