kampanita escribió:
Repelis.tv, estoy intentando crear el canal, por el momento voy lento pero ya tengo la parte de sacar las fichas...
Es un buen sitio, los enlaces no fallan.
Bueno, por si alguno os interesa, aquí esta el canal de Repelis.tv con lo básico.
Me falta hacer búsqueda por categorías y demás cosas... como digo de momento es básico, pero por si alguno os animáis a echarme una mano, que todavía estoy muy verde en este asunto, llevo mirándolo desde hace unos días solo y esta siendo un poco durillo el python
.
Código: Seleccionar todo
# -*- coding: utf-8 -*-
#------------------------------------------------------------
# pelisalacarta - XBMC Plugin
# Canal para Repelis - Por Kampanita-2015
# http://blog.tvalacarta.info/plugin-xbmc/pelisalacarta/
#------------------------------------------------------------
import urlparse,urllib2,urllib,re
import os, sys
from core import logger
from core import config
from core import scrapertools
from core.item import Item
from servers import servertools
__channel__ = "repelis"
__category__ = "F,L"
__type__ = "generic"
__title__ = "Repelis"
__language__ = "ES"
DEBUG = config.get_setting("debug")
def isGeneric():
return True
def mainlist(item):
logger.info("[repelis] mainlist")
itemlist = []
item.url = "http://www.repelis.tv/page/1"
# Descarga la pagina
data = scrapertools.cache_page(item.url)
patron = '<li id="menu-item-[^<]+><a href="([^"]+)" title="([^"]+)">'
matches = re.compile(patron,re.DOTALL).findall(data)
scrapertools.printMatches(matches)
for scrapedurl,scrapedtitle in matches:
title = scrapedtitle
url = urlparse.urljoin(item.url,scrapedurl)
itemlist.append( Item(channel=__channel__, action="menupelis", title=title, fulltitle=title , url=url , thumbnail="http://s6.postimg.org/gninw2o9d/searchaquittub.jpg") )
itemlist.append( Item(channel=__channel__, action="poranyo", title="Por Año", url="http://www.repelis.tv/fecha/2015", thumbnail="http://s6.postimg.org/gninw2o9d/searchaquittub.jpg", fanart="http://s6.postimg.org/b4kpslglt/searchaquit.jpg"))
itemlist.append( Item(channel=__channel__, action="search", title="Buscar...", url="http://www.repelis.tv/search/?s=", thumbnail="http://s6.postimg.org/gninw2o9d/searchaquittub.jpg", fanart="http://s6.postimg.org/b4kpslglt/searchaquit.jpg"))
return itemlist
def menupelis(item):
logger.info("[repelis] menupelis")
logger.info("[repelis] "+item.url)
itemlist = []
data = scrapertools.cache_page(item.url)
patron = '<a href="([^"]+)" title="([^"]+)"> <div class="poster".*?<img src="([^"]+)"'
matches = re.compile(patron,re.DOTALL).findall(data)
for scrapedurl,scrapedtitle,scrapedthumbnail in matches:
title = scrapedtitle.replace("Ver Película","");
title = title.replace("Online","");
url = urlparse.urljoin(item.url,scrapedurl)
thumbnail = urlparse.urljoin(item.url,scrapedthumbnail)
itemlist.append( Item(channel=__channel__, action="verpeli", title=title, fulltitle=title , url=url , thumbnail=thumbnail) )
if not "/page/" in item.url:
item.url = item.url + "/page/0)"
match = 0
data=item.url
patron='/page/([0-9])'
matches = re.compile(patron,re.DOTALL).findall(data)
scrapertools.printMatches(matches)
for smatch in matches:
match = int(smatch) + 1
item.url=item.url.replace(smatch,str(match))
itemlist.append( Item(channel=__channel__, action="menupelis", title="Pag.Siguiente >>", fulltitle="Pag.Siguiente" , url=item.url ) )
return itemlist
# Extrae las entradas
def verpeli(item):
logger.info("[repelis] menupelis")
logger.info("[repelis] "+item.url)
itemlist = []
data = scrapertools.cache_page(item.url)
patron='<a rel="nofollow" href="([^"]+)".*?</a>.*?</td>.*?<td>(.*?)</td>.*?<td>(.*?)</td>'
matches = re.compile(patron,re.DOTALL).findall(data)
scrapertools.printMatches(matches)
for scrapedurl,scrapedlang,scrapedquality in matches:
url = urlparse.urljoin(item.url,scrapedurl)
logger.info("[repelis] "+url)
itemlist.append( Item(channel=__channel__, action="play" , title=scrapedlang+" "+scrapedquality , url=url, thumbnail=item.thumbnail, server="directo", folder=False))
return itemlist
def search(item, texto):
logger.info("[repelis] "+item.url)
item.url = 'http://www.repelis.tv/search/?s=%s' % (texto)
logger.info("[repelis] "+item.url)
data = scrapertools.cache_page(item.url)
patron = '<p class="num-resultados">.*?<a href="([^"]+)" title="([^"]+)">.*?<img src="([^"]+)".*?<p class="text-list">(.*?)</p>'
matches = re.compile(patron,re.DOTALL).findall(data)
scrapertools.printMatches(matches)
itemlist = []
for scrapedurl,scrapedtitle,scrapedthumbnail,scrapedinfo in matches:
title = scrapedtitle
url = urlparse.urljoin(item.url,scrapedurl)
thumbnail = urlparse.urljoin(item.url,scrapedthumbnail)
logger.info("[repelis] "+url)
itemlist.append( Item(channel=__channel__, action="verpeli", title=title, fulltitle=title , url=url , thumbnail=thumbnail) )
return itemlist
def poranyo(item):
logger.info("[repelis] poranyo")
logger.info("[repelis] "+item.url)
itemlist = []
data = scrapertools.cache_page(item.url)
patron = '<option value="([^"]+)">(.*?)</option>'
matches = re.compile(patron,re.DOTALL).findall(data)
scrapertools.printMatches(matches)
for scrapedurl,scrapedtitle in matches:
title = scrapedtitle
url = urlparse.urljoin(item.url,scrapedurl)
itemlist.append( Item(channel=__channel__, action="menupelis", title=title, fulltitle=title , url=url ) )
return itemlist
Archivos ADJUNTOS en viewtopic.php?f=24&t=4689&start=170#p26128
traxel escribió:
lo he probado y me salta error...
neno1978 escribió:
seguramente sea porque el
Código: Seleccionar todo
data = scrapertools.cache_page(item.url)
de la linea 135 esta mal "ubicao", lo "corres" un espacio y listo
además, no reproduce nada del modo que lo tienes puesto. El caso de esta web es que de los servidores que tiene solo nos es util netu, es decir, no tenemos conectores para los otros y netu, viene en esta web acoplado a una url de la misma , que lo hace extraño e irreconocible par nosotros. prueba esto:
Código: Seleccionar todo
def verpeli(item):
logger.info("[repelis] menupelis")
logger.info("[repelis] "+item.url)
itemlist = []
data = scrapertools.cache_page(item.url)
patron='<a rel="nofollow".*?</a>.*?</td>.*?<td>(.*?)</td>.*?<td>(.*?)</td>.*?src="http://www.google.com/s2/favicons\?domain=(.*?)"'
matches = re.compile(patron,re.DOTALL).findall(data)
scrapertools.printMatches(matches)
for scrapedlang, scrapedquality, scrapedurl in matches:
url = urlparse.urljoin(item.url,scrapedurl)
logger.info("[repelis] "+url)
itemlist.append( Item(channel=__channel__, action="play" , title=scrapedurl+" "+scrapedquality , url=url, thumbnail=item.thumbnail, folder=False))
return itemlist
def play(item):
logger.info("[repelis] play url="+item.url)
itemlist = servertools.find_video_items(data=item.url)
return itemlist
te pongo así la url como title para que veas lo que te digo, ya , desde ese punto lo puedes acoplar a tu gusto
kampanita escribió:
Hola neno1978.
Si, la verdad es que voy poco a poco, me esta costando más de lo que pensaba, ademas he estado desarrollandolo en ratos libres en la ofi, y aqui estoy detras de un proxy, por lo que no puedo probar las cosas "bien" hasta llegar a casa.
Lo que estoy haciendo es coger el codigo fuente html y metermelo en la variable "data" para ir probando...
Ayer cuando lo probé en casa, ya vi que no funcionaba bien..., tengo que repasar el tema de la paginación y obtener también solo los enlaces de netu/openload porque los de domino ruso esos, no van, supongo que es que no hay echo conector para dichos servidores, o...algo...
Gracias por echarme un cable !! La verdad es que me había parecido más sencillo pero tiene su miga esto![]()
PD: A ver si saco un rato este finde para terminarlo y que mas o menos funcione ...
neno1978 escribió:
Y eso es todo de momento.Poco a poco, es cogerle el tranquillo , ya te puede contar robalo los dolores de cabeza q le di al principio...y los q le sigo dando![]()
lo q si creo es q de openload, tampoco tenemos conector
Ahora a seguir posteando por aquí para que se pueda seguir mejor el proyecto de kampanita y sea más fácil ayudar en lo que se pueda.