Página 1 de 1

Añadir esta serie a la biblioteca de XBMC

Publicado: 29 Dic 2014, 12:06
por Zezaru
Estoy intentando añadir el menu "Añadir esta serie a la biblioteca de XBMC" para el canal pordede, despues de varias pruebas e conseguido que aparezca pero me aparece despues de cada temporada y da error cuando le doy.

Código: Seleccionar todo

def episodios(item):
    logger.info("pelisalacarta.channels.pordede episodios")
    itemlist = []

    # Descarga la pagina
    data = scrapertools.cache_page(item.url)
    #logger.info("data="+data)

    patrontemporada = '<div class="checkSeason"[^>]+>([^<]+)<div class="right" onclick="controller.checkSeason(.*?)\s+</div></div>'
    matchestemporadas = re.compile(patrontemporada,re.DOTALL).findall(data)

    for nombre_temporada,bloque_episodios in matchestemporadas:
        logger.info("nombre_temporada="+nombre_temporada)
        logger.info("bloque_episodios="+bloque_episodios)

        # Extrae los episodios
        '''
        <div class="modelContainer defaultPopup" data-model="episode" data-id="475009" href="/links/viewepisode/id/475009">
        <div class="info">
        <span class="title defaultPopup" href="/links/viewepisode/id/475009"><span class="number">2 </span>Unlocking Sherlock</span>
        </div>
        <span class="subtitle"><span class="nomobile">Desde 30-08-2010</span><span class="mobile">30-08-2010</span></span><div class="episodeActions"><button class="big defaultPopup" href="/links/viewepisode/id/475009"><span class="nomobile">Ver enlaces</span><span class="mobile">Ver</span></button><div class="action" data-action="seen"><i class="icon" ></i> <span class="seen">visto</span></div></div>
        </div>
        '''
        patron  = '<span class="title defaultPopup" href="([^"]+)"><span class="number">([^<]+)</span>([^<]+)</span>'
        matches = re.compile(patron,re.DOTALL).findall(bloque_episodios)
        
        for scrapedurl,numero,scrapedtitle in matches:
            title = nombre_temporada+" "+numero+" "+scrapertools.htmlclean(scrapedtitle)
            thumbnail = ""
            plot = ""
            #http://www.pordede.com/peli/the-lego-movie
            #http://www.pordede.com/links/view/slug/the-lego-movie/what/peli?popup=1
            #http://www.pordede.com/links/viewepisode/id/475011?popup=1
            epid = scrapertools.find_single_match(scrapedurl,"id/(\d+)")
            url = "http://www.pordede.com/links/viewepisode/id/"+epid

            ##Esta era la linea original
            ##itemlist.append( Item(channel=__channel__, action="findvideos" , title=title , url=url, thumbnail=thumbnail, plot=plot, fulltitle=title))
            ##Esta con los cambios que hize
            itemlist.append( Item(channel=__channel__, action="findvideos" , title=title , url=item.url, thumbnail=thumbnail, plot=plot, fulltitle=title, show=item.show))

            if (DEBUG): logger.info("title=["+title+"], url=["+url+"], thumbnail=["+thumbnail+"]")

            ## Esta linea la añadi para que salie el menu de añadir a la biblioteca
        if (config.get_platform().startswith("xbmc") or config.get_platform().startswith("boxee")) and len(itemlist)>0:
            itemlist.append( Item(channel=__channel__, title="Añadir esta serie a la biblioteca de XBMC", url=item.url, action="add_serie_to_library", extra="episodios", show=item.show))

    return itemlist
He modificado una linea y he añadido otra linea en la funcion episodios, no tengo mucha idea, me e estado fijando en el codigo de otros canales...¿Que es lo que esta mal?

Re: Añadir esta serie a la biblioteca de XBMC

Publicado: 29 Dic 2014, 17:44
por jesus
Así a ojo, está dentro del bucle de temporadas.

Debería estar al final del todo, fuera de ese bucle, así añadiría todos los episodios y al final añadiría esa opción de menu.

En cuanto al error, si pones el log igual puedo orientarte mejor.