# -*- coding: utf-8 -*- #------------------------------------------------------------ # pelisalacarta - XBMC Plugin # Canal para seriesyonkis # http://blog.tvalacarta.info/plugin-xbmc/pelisalacarta/ # Por Truenon y Jesus, modificada por Boludiko # v11 #------------------------------------------------------------ import urlparse,urllib2,urllib,re from core import logger from core import config from core import scrapertools from core.item import Item from servers import servertools __channel__ = "seriesyonkis" __category__ = "S,A" __type__ = "generic" __title__ = "Seriesyonkis" __language__ = "ES" DEBUG = config.get_setting("debug") def isGeneric(): return True def mainlist(item): logger.info("[seriesyonkis.py] mainlist") itemlist = [] itemlist.append( Item(channel=__channel__, action="lastepisodes" , title="Ultimos capítulos" , url="http://www.seriesyonkis.com/ultimos-capitulos")) itemlist.append( Item(channel=__channel__, action="listalfabetico" , title="Listado alfabetico", url="http://www.seriesyonkis.com")) itemlist.append( Item(channel=__channel__, action="mostviewed" , title="Series más vistas", url="http://www.seriesyonkis.com/series-mas-vistas")) itemlist.append( Item(channel=__channel__, action="search" , title="Buscar", url="http://www.seriesyonkis.com/buscar/serie")) return itemlist def search(item,texto, categoria="*"): logger.info("[seriesyonkis.py] search") itemlist = [] if categoria not in ("*", "S"): return itemlist ## <-- if item.url=="": item.url = "http://www.seriesyonkis.com/buscar/serie" url = "http://www.seriesyonkis.com/buscar/serie" # write ur URL here post = 'keywords='+texto[0:18] data = scrapertools.cache_page(url,post=post) patron = '
  • ]+>[^<]+

    ([^<]+)

    ' matches = re.compile(patron,re.DOTALL).findall(data) for match in matches: scrapedtitle = match[0] scrapedurl = urlparse.urljoin(item.url,match[1]) scrapedthumbnail = match[2] scrapedplot = match[3] if (DEBUG): logger.info("title=["+scrapedtitle+"], url=["+scrapedurl+"], thumbnail=["+scrapedthumbnail+"]") itemlist.append( Item(channel=__channel__, action="episodios" , title=scrapedtitle , fulltitle=scrapedtitle , url=scrapedurl, thumbnail=scrapedthumbnail, plot=scrapedplot, show=scrapedtitle)) return itemlist def lastepisodes(item): logger.info("[seriesyonkis.py] lastepisodes") data = scrapertools.cache_page(item.url) #
  • 2x03
    Strike back
  • matches = re.compile('
  • .*?
  • ', re.S).findall(data) #scrapertools.printMatches(matches) itemlist = [] for match in matches: #
  • 2x03
    Strike back
  • datos = re.compile('.*?src="([^"]+)".*?([^<]+).*?title="([^"]+)"', re.S).findall(match) for capitulo in datos: scrapedtitle = capitulo[3] + " " + capitulo[2] scrapedurl = urlparse.urljoin( item.url , capitulo[0] ) scrapedthumbnail = item.url + capitulo[1] scrapedplot = "" # Depuracion if (DEBUG): logger.info("title=["+scrapedtitle+"], url=["+scrapedurl+"], thumbnail=["+scrapedthumbnail+"]") itemlist.append( Item(channel=__channel__, action="findvideos" , title=scrapedtitle , fulltitle=scrapedtitle , url=scrapedurl, thumbnail=scrapedthumbnail, plot=scrapedplot, show=scrapedtitle)) return itemlist def mostviewed(item): logger.info("[seriesyonkis.py] mostviewed") data = scrapertools.cachePage(item.url) #
  • Cómo conocí a vuestra madre
  • matches = re.compile('
  • ', re.S).findall(data) #scrapertools.printMatches(matches) itemlist = [] for match in matches: scrapedtitle = match[1] scrapedurl = urlparse.urljoin(item.url,match[0]) scrapedthumbnail = urlparse.urljoin(item.url,match[2]) scrapedplot = "" # Depuracion if (DEBUG): logger.info("title=["+scrapedtitle+"], url=["+scrapedurl+"], thumbnail=["+scrapedthumbnail+"]") itemlist.append( Item(channel=__channel__, action="episodios" , title=scrapedtitle, fulltitle=scrapedtitle , url=scrapedurl, thumbnail=scrapedthumbnail, plot=scrapedplot, show=scrapedtitle)) return itemlist def series(item): logger.info("[seriesyonkis.py] series") itemlist = [] data = scrapertools.cachePage(item.url) #Paginador #
     < 1 2 3 > 
    matches = re.compile('
    .*?>.*?
    ', re.S).findall(data) if len(matches)>0: paginador = Item(channel=__channel__, action="series" , title="!Página siguiente" , url=urlparse.urljoin(item.url,matches[0]), thumbnail=item.thumbnail, plot="", extra = "" , show=item.show) else: paginador = None if paginador is not None: itemlist.append( paginador ) #
    .*?
    #matches = re.compile('
    .*?
    ', re.S).findall(data) matches = re.compile('