Creacion de canales
Publicado: 16 Jun 2018, 12:07
				
				Buenas, estoy intentando crear un par de canales(asi voy aprendiendo poco a poco), y me estoy encontrando unos problemillas.
Intentare explicarme lo mejor posible, estoy creando un canal y la serie tiene varios capitulos en un torrent, y lo identifican en la web como del 1-3 capitulos(como un solo item), al pasar la info al tmdb de ese item da error,con lo cual no entra,pero en los enlaces que estan bien numerados si, en resumen, si un listado esta mal(por x razon)no lo muestra, a no ser que lo ponga como 'type=item' pero pierde el tmdb(que es como lo tengo ahora).
En resumen que se pudiera hacer que si diera error al pasar el tmdb que pasara de el y mostrara el titulo que pongamos.
Dejo los archivos para que se pueda ver mejor el error.
Edito: Pondre mas o menos lo que llevamos visto.
			Intentare explicarme lo mejor posible, estoy creando un canal y la serie tiene varios capitulos en un torrent, y lo identifican en la web como del 1-3 capitulos(como un solo item), al pasar la info al tmdb de ese item da error,con lo cual no entra,pero en los enlaces que estan bien numerados si, en resumen, si un listado esta mal(por x razon)no lo muestra, a no ser que lo ponga como 'type=item' pero pierde el tmdb(que es como lo tengo ahora).
En resumen que se pudiera hacer que si diera error al pasar el tmdb que pasara de el y mostrara el titulo que pongamos.
Dejo los archivos para que se pueda ver mejor el error.
Edito: Pondre mas o menos lo que llevamos visto.
Código: Seleccionar todo
# -*- coding: utf-8 -*-
from core.libs import *
QLT = Qualities({
    Qualities.rip: ['dvdrip', 'rhdtv'],
    Qualities.hd_full: ['1080p', 'BluRay-1080p', 'BDremux-1080p', 'FullBluRay', 'MicroHD-1080p'],
    Qualities.hd: ['BluRay-720p', 'hdtv', '720p'],
    Qualities.scr: ['dvdscr']
})
HOST = 'http://www.mejortorrent.com'
def mainlist(item):
    logger.trace()
    itemlist = list()
    itemlist.append(item.clone(
        action="newest_movies",
        label="Peliculas HD",
        url=HOST + '/torrents-de-peliculas-hd-alta-definicion.html',
        content_type='movies',
        type="item"
    ))
    return itemlist
def newest_movies(item):
    logger.trace()
    itemlist = list()
    data = httptools.downloadpage(item.url).data
    data = unicode(data, "iso-8859-1", errors="replace").encode("utf-8")
    
    #extraemos bloque informacion
    bloque = scrapertools.find_multiple_matches(data, "<td><div align='justify'><center>(.*?)<br>")
    #unimos los resultados
    bloque = ''.join(bloque) 
    #---------------------------
    patron = '<a href="([^<]+)">.*?<img src="(.*?)" '
    #bloque quality
    bloque_quality = scrapertools.find_multiple_matches(data,'<br>(.*?)</table>')
    bloque_quality = ''.join(bloque_quality)
    #----------------------------
    
    for url, poster in scrapertools.find_multiple_matches(bloque, patron):
        #limpieza titulo
        title = scrapertools.find_single_match(url, '\d+-(.*?).html')
        title = title.replace('-',' ').replace('4K HDR','').replace('FullBluRay','')
        #quality
        quality = scrapertools.find_single_match(url, '(\d+)')
        quality = scrapertools.find_single_match(bloque_quality, quality+'.*?b>(.*?)<')
        quality = quality.replace('(','').replace(')','').replace(' ', '')
        #     
        url =  HOST + url
        poster = HOST + poster       
        
        new_item = item.clone(
            title=title,
            label=title,
            url=url,
            poster=poster,
            type="movie",
            content_type="servers",
            quality=QLT.get(quality),
            action="findvideos"
            )
        
        itemlist.append(new_item)
    # Paginador
    next_url = scrapertools.find_single_match(data, "</span> <a href='(.*?)'")
    if next_url:
        next_url = HOST + next_url
        itemlist.append(item.clone(
            action="newest_movies",
            url=next_url,
            type='next'
        ))
      
    return itemlist
def findvideos(item):
    logger.trace()
    itemlist = list()
    data = httptools.downloadpage(item.url).data
    data = unicode(data, "iso-8859-1", errors="replace").encode("utf-8")
    data = re.sub(r"\n|\r|\t| |<br>", "", data)
    size = scrapertools.find_single_match(data, 'Tamaño:</b> (.*?) .*?<')
    size = size.replace(',','.')
          
    data_torrent = scrapertools.find_single_match(data, "Torrent:.*?<a href='(.*?)'")
    url2 = HOST+"/"+data_torrent
    #descargamos la siguiente pagina
    data = httptools.downloadpage(url2).data
    data = re.sub(r"\n|\r|\t| |<br>", "", data)
    
    data_enlace = "Pincha <a href='(.*?)'>"
    url = scrapertools.find_single_match(data, data_enlace)
    url = HOST + url
   
    itemlist.append(item.clone(
        label=item.label,
        action="play",
        url=url,
        type='server',
        size=float(size) * 1024 * 1024,
        server='torrent'
    ))
    
    itemlist = servertools.get_servers_from_id(itemlist)
        
    return itemlist
