# -*- coding: utf-8 -*- import re import urllib import urlparse from channelselector import get_thumb from core import httptools from core import scrapertools from core import servertools from core.item import Item from platformcode import logger host = "http://torrentlocura.com/" def mainlist(item): logger.info() thumb_movie = get_thumb("channels_movie.png") thumb_tvshow = get_thumb("channels_tvshow.png") thumb_anime = get_thumb("channels_anime.png") thumb_search = get_thumb("search.png") itemlist = list() itemlist.append(Item(channel=item.channel, action="submenu", title="Películas", url=host, thumbnail=thumb_movie, pattern="peliculas")) itemlist.append( Item(channel=item.channel, action="submenu", title="Series", url=host, thumbnail=thumb_tvshow, pattern="series")) itemlist.append( Item(channel=item.channel, action="anime", title="Anime", url=host, thumbnail=thumb_anime, pattern="anime")) itemlist.append(Item(channel=item.channel, action="search", title="Buscar", url=host + "buscar", thumbnail=thumb_search)) return itemlist def search(item, texto): logger.info("search:" + texto) # texto = texto.replace(" ", "+") try: item.post = "q=%s" % texto item.pattern = "buscar-list" itemlist = listado2(item) return itemlist # 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 anime(item): logger.info() itemlist = [] title = "Anime" url = host + "anime" itemlist.append(item.clone(channel=item.channel, action="listado", title=title, url=url, pattern="pelilist")) itemlist.append( item.clone(channel=item.channel, action="alfabeto", title=title + " [A-Z]", url=url, thumbnail=item.thumbnail[:-4] + "_az.png", pattern="pelilist")) return itemlist def submenu(item): logger.info() itemlist = [] data = re.sub(r"\n|\r|\t|\s{2,}", "", httptools.downloadpage(item.url).data) # data = unicode(data, "iso-8859-1", errors="replace").encode("utf-8") pattern = '