Nos se que decirte, a mi no me sale en el log los errores que salían antes. He probado "La casa de Mickey Mouse" y en los dos se para en el mismo punto. Con xbmctorrent no se ve claro en el log el motivo, sólo un return -1 en las respuestas. Pulsar dice: "We don't have piece 506, setting piece priorities", por lo que creo entender, nos falta un cacho . Aún así dime que vídeos has probado de aquitorrent que te haya dado error en xbmctorrent y en pulsar no. Así me aclaro con este tema.
Te pego como tengo yo el canal para que lo pruebes y para que puedas sacar algunas conclusiones.
Código: Seleccionar todo
# -*- coding: utf-8 -*-
#------------------------------------------------------------
# pelisalacarta - XBMC Plugin
# http://blog.tvalacarta.info/plugin-xbmc/pelisalacarta/
#------------------------------------------------------------
import urlparse,urllib2,urllib,re
import os
import sys
from core import scrapertools
from core import config
from core import logger
from core.item import Item
from servers import servertools
__channel__ = "aquitorrent"
__category__ = "F"
__type__ = "generic"
__title__ = "Aquitorrent"
__language__ = "ES"
DEBUG = config.get_setting("debug")
def isGeneric():
return True
def mainlist(item):
logger.info("pelisalacarta.aquitorrent mainlist")
itemlist = []
itemlist.append( Item(channel=__channel__, action="peliculas", title="Películas", url="http://www.aquitorrent.com/torr.asp?pagina=1&tipo=PELICULAS"))
itemlist.append( Item(channel=__channel__, action="peliculas", title="Series", url="http://www.aquitorrent.com/torr.asp?pagina=1&tipo=SERIES"))
itemlist.append( Item(channel=__channel__, action="peliculas", title="Películas HD", url="http://www.aquitorrent.com/torr.asp?pagina=1&tipo=Peliculas%20HD"))
itemlist.append( Item(channel=__channel__, action="peliculas", title="Películas 3D", url="http://www.aquitorrent.com/torr.asp?pagina=1&tipo=PELICULAS%203D"))
itemlist.append( Item(channel=__channel__, action="peliculas", title="DVDR Imagen de DVD", url="http://www.aquitorrent.com/torr.asp?pagina=1&tipo=DVDR%20IMAGEN%20DE%20DVD"))
itemlist.append( Item(channel=__channel__, action="peliculas", title="BR Imagen de BlueRay", url="http://www.aquitorrent.com/torr.asp?pagina=1&tipo=BR%20IMAGEN%20DE%20BLUERAY"))
itemlist.append( Item(channel=__channel__, action="peliculas", title="Películas V.O.S.", url="http://www.aquitorrent.com/torr.asp?pagina=1&tipo=PELICULAS%20V.O.S."))
itemlist.append( Item(channel=__channel__, action="peliculas", title="Docus y TV", url="http://www.aquitorrent.com/torr.asp?pagina=1&tipo=Docus%20y%20TV"))
itemlist.append( Item(channel=__channel__, action="peliculas", title="Clásicos Disney", url="http://www.aquitorrent.com/torr.asp?pagina=1&tipo=CLASICOS%20DISNEY"))
itemlist.append( Item(channel=__channel__, action="peliculas", title="F1 2014", url="http://www.aquitorrent.com/torr.asp?pagina=1&tipo=F1%202014"))
itemlist.append( Item(channel=__channel__, action="peliculas", title="MotoGP 2014", url="http://www.aquitorrent.com/torr.asp?pagina=1&tipo=MotoGP%202014"))
itemlist.append( Item(channel=__channel__, action="peliculas", title="Mundial 2014", url="http://www.aquitorrent.com/torr.asp?pagina=1&tipo=Mundial%202014"))
itemlist.append( Item(channel=__channel__, action="search", title="Buscar...", url=""))
return itemlist
# Al llamarse "search" la función, el launcher pide un texto a buscar y lo añade como parámetro
def search(item,texto):
logger.info("[pelisalacarta.aquitorrent search texto="+texto)
item.url = "http://www.aquitorrent.com/buscar.asp?pagina=1&buscar=%s" % (texto)
try:
return peliculas(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 peliculas(item):
logger.info("pelisalacarta.aquitorrent peliculas")
itemlist = []
data = scrapertools.cache_page(item.url)
data = re.sub(r"\n|\r|\t|\s{2}| ","",data)
# Elimina el título en los href de los enlaces
data = re.sub(r'&/[^"]+">','">',data)
patron = '<div class="div_pic"[^>]+>'
patron+= '<a href="([^"]+)">'
patron+= '<img src="([^"]+)" alt="([^"]+)"'
matches = re.compile(patron,re.DOTALL).findall(data)
scrapertools.printMatches(matches)
host = "http://www.aquitorrent.com/"
for scrapedurl, scrapedthumbnail, scrapedtitle in matches:
itemlist.append( Item(channel=__channel__, title =scrapedtitle , url=host+scrapedurl, action="findvideos", thumbnail=scrapedthumbnail) )
## Paginación
pagina = int(scrapertools.get_match(item.url,"pagina=(\d+)"))+1
pagina = "pagina=%s" % (pagina)
next_page = re.sub(r"pagina=\d+", pagina, item.url)
if pagina in data:
itemlist.append( Item(channel=__channel__, title=">> Página siguiente", url=next_page, action="peliculas", folder=True) )
return itemlist
def findvideos(item):
logger.info("pelisalacarta.aquitorrent findvideos")
itemlist = []
data = scrapertools.cache_page(item.url)
data = re.sub(r"\n|\r|\t|\s{2}| ","",data)
patron = 'href="(magnet[^"]+)".*?'
patron+= 'href="http://www.bitlet.org/video/play.torrent=([^&]+)&'
matches = re.compile(patron,re.DOTALL).findall(data)
for scrapedmagnet, scrapedtorrent in matches:
itemlist.append( Item(channel=__channel__, title =item.title+" [magnet]" , url=scrapedmagnet, action="play", server="torrent", thumbnail=item.thumbnail, folder=False) )
itemlist.append( Item(channel=__channel__, title =item.title+" [torrent]" , url=scrapedtorrent, action="play", server="torrent", thumbnail=item.thumbnail, folder=False) )
return itemlist