def novedades(params,url,category): logger.info("[pelispekes.py] novedades") # ------------------------------------------------------ # Descarga la página # ------------------------------------------------------ data = scrapertools.cachePage(url) #logger.info(data) # ------------------------------------------------------ # Extrae las películas # ------------------------------------------------------ #patron = '<div class="thumb">[^<]+<a href="([^"]+)"><img src="([^"]+)".*?alt="([^"]+)"/></a>' patron = '<div class="post-content clearfix">.+?' patron += '<a href="([^"]+)">' #Url patron += '<img src="([^"]+)".+?' #Caratula patron += 'alt="([^"]+)"/></a>.+?' #Titulo patron += '<p>([^<]+)</p>' matches = re.compile(patron,re.DOTALL).findall(data) if DEBUG: scrapertools.printMatches(matches) for match in matches: scrapedtitle = match[2] scrapedurl = match[0] scrapedthumbnail = match[1].replace(" ","%20") scrapedplot = match[3] if (DEBUG): logger.info("title=["+scrapedtitle+"], url=["+scrapedurl+"], thumbnail=["+scrapedthumbnail+"]") try: print scrapedtitle scrapedtitle = scrapedtitle #scrapedtitle = unicode(scrapedtitle, "utf-8" ) except: pass # Añade al listado de XBMC xbmctools.addnewfolder( CHANNELNAME , "listmirrors" , category , scrapedtitle , scrapedurl , scrapedthumbnail, scrapedplot ) # ------------------------------------------------------ # Extrae la página siguiente # ------------------------------------------------------ #patron = '<a href="([^"]+)" >\»\;</a>' patron = "class='current'>[^<]+</span><a href='([^']+)'" matches = re.compile(patron,re.DOTALL).findall(data) if DEBUG: scrapertools.printMatches(matches) for match in matches: scrapedtitle = "!Pagina siguiente" scrapedurl = match scrapedthumbnail = "" scrapeddescription = "" if (DEBUG): logger.info("title=["+scrapedtitle+"], url=["+scrapedurl+"], thumbnail=["+scrapedthumbnail+"]") # Añade al listado de XBMC xbmctools.addthumbnailfolder( CHANNELNAME , scrapedtitle , scrapedurl , scrapedthumbnail, "novedades" ) # Label (top-right)... xbmcplugin.setPluginCategory( handle=pluginhandle, category=category ) xbmcplugin.addSortMethod( handle=pluginhandle, sortMethod=xbmcplugin.SORT_METHOD_NONE ) xbmcplugin.endOfDirectory( handle=pluginhandle, succeeded=True )
def fulllist(params,url,category): # Descarga la página data = scrapertools.cachePage(url) #logger.info(data) # Extrae las entradas (carpetas) patronvideos = '<li><a href="([^"]+)"><span>([^<]+)</span></a></li>' matches = re.compile(patronvideos,re.DOTALL).findall(data) scrapertools.printMatches(matches) for match in matches: scrapedtitle = match[1] scrapedurl = urlparse.urljoin(url,match[0]) scrapedthumbnail = "" scrapeddescription = "" if (DEBUG): logger.info("title=["+scrapedtitle+"], url=["+scrapedurl+"], thumbnail=["+scrapedthumbnail+"]") # Añade al listado de XBMC xbmctools.addthumbnailfolder( CHANNELNAME , scrapedtitle , scrapedurl , scrapedthumbnail, "detail" ) # Label (top-right)... xbmcplugin.setPluginCategory( handle=pluginhandle, category=category ) xbmcplugin.addSortMethod( handle=pluginhandle, sortMethod=xbmcplugin.SORT_METHOD_NONE ) xbmcplugin.endOfDirectory( handle=pluginhandle, succeeded=True )
def newlist(params,url,category): # Descarga la página data = scrapertools.downloadpageGzip(url) #logger.info(data) # Extrae las entradas (carpetas) patronvideos = '<div class="item">.*?<a href="([^"]+)"[^<]+<img src="([^"]+)".*?<div class="cover boxcaption">[^<]+<h1>([^<]+)</h1>' matches = re.compile(patronvideos,re.DOTALL).findall(data) scrapertools.printMatches(matches) for match in matches: scrapedtitle = match[2] scrapedurl = urlparse.urljoin(url,match[0]) scrapedthumbnail = urlparse.urljoin(url,match[1]) scrapeddescription = "" if (DEBUG): logger.info("title=["+scrapedtitle+"], url=["+scrapedurl+"], thumbnail=["+scrapedthumbnail+"]") # Añade al listado de XBMC xbmctools.addthumbnailfolder( CHANNELNAME , scrapedtitle , scrapedurl , scrapedthumbnail, "detail" ) # Label (top-right)... xbmcplugin.setPluginCategory( handle=pluginhandle, category=category ) xbmcplugin.addSortMethod( handle=pluginhandle, sortMethod=xbmcplugin.SORT_METHOD_NONE ) xbmcplugin.endOfDirectory( handle=pluginhandle, succeeded=True )
def catlist(params,url,category): # Descarga la página data = scrapertools.downloadpageGzip(url) #logger.info(data) # Extrae las entradas (carpetas) <a class="accion linkFader" href="../accion-1.html"></a> patronvideos = '<a class="([^"]+)" href="([^"]+)"></a>' matches = re.compile(patronvideos,re.DOTALL).findall(data) scrapertools.printMatches(matches) for match in matches: scrapedtitle = match[0].replace("linkFader","").strip() scrapedurl = urlparse.urljoin(url,match[1]) scrapedthumbnail = "" scrapeddescription = "" if (DEBUG): logger.info("title=["+scrapedtitle+"], url=["+scrapedurl+"], thumbnail=["+scrapedthumbnail+"]") # Añade al listado de XBMC xbmctools.addthumbnailfolder( CHANNELNAME , scrapedtitle , scrapedurl , scrapedthumbnail, "newlist" ) # Label (top-right)... xbmcplugin.setPluginCategory( handle=pluginhandle, category=category ) xbmcplugin.addSortMethod( handle=pluginhandle, sortMethod=xbmcplugin.SORT_METHOD_NONE ) xbmcplugin.endOfDirectory( handle=pluginhandle, succeeded=True )
def novedades(params,url,category): logger.info("[delatv.py] novedades") # ------------------------------------------------------ # Descarga la página # ------------------------------------------------------ data = scrapertools.cachePage(url) #logger.info(data) # ------------------------------------------------------ # Extrae las películas # ------------------------------------------------------ #patron = '<div class="thumb">[^<]+<a href="([^"]+)"><img src="([^"]+)".*?alt="([^"]+)"/></a>' patron = '<div class="imagen">' patron += '<a title="([^"]+)"' patron += ' href="([^"]+)"><img.+?src="([^"]+)" /></a>.*?' patron += '<div class="sinopsis">[^<]+<p><p>(.+?)</p>' matches = re.compile(patron,re.DOTALL).findall(data) if DEBUG: scrapertools.printMatches(matches) for match in matches: scrapedtitle = match[0] scrapedurl = match[1] scrapedthumbnail = match[2].replace(" ","%20") scrapedplot = match[3] if (DEBUG): logger.info("title=["+scrapedtitle+"], url=["+scrapedurl+"], thumbnail=["+scrapedthumbnail+"]") try: print scrapedtitle scrapedtitle = scrapedtitle.replace("ñ","ñ") #scrapedtitle = unicode(scrapedtitle, "utf-8" ) except: pass # Añade al listado de XBMC xbmctools.addnewfolder( CHANNELNAME , "listmirrors" , category , scrapedtitle , scrapedurl , scrapedthumbnail, scrapedplot ) # ------------------------------------------------------ # Extrae la página siguiente # ------------------------------------------------------ #patron = '<a href="([^"]+)" >\»\;</a>' patron = "<span class='current'>[^<]+</span><a href='([^']+)'" matches = re.compile(patron,re.DOTALL).findall(data) if DEBUG: scrapertools.printMatches(matches) for match in matches: scrapedtitle = "!Pagina siguiente" scrapedurl = match scrapedthumbnail = "" scrapeddescription = "" if (DEBUG): logger.info("title=["+scrapedtitle+"], url=["+scrapedurl+"], thumbnail=["+scrapedthumbnail+"]") # Añade al listado de XBMC xbmctools.addthumbnailfolder( CHANNELNAME , scrapedtitle , scrapedurl , scrapedthumbnail, "novedades" ) # Label (top-right)... xbmcplugin.setPluginCategory( handle=pluginhandle, category=category ) xbmcplugin.addSortMethod( handle=pluginhandle, sortMethod=xbmcplugin.SORT_METHOD_NONE ) xbmcplugin.endOfDirectory( handle=pluginhandle, succeeded=True )
def listcat(params,url,category): xbmc.output("[cineblog01.py] mainlist") if url =="": url = "http://cineblog01.com/film/" # Descarga la página data = scrapertools.cachePage(url) #xbmc.output(data) # Extrae las entradas (carpetas) patronvideos = '<div id="covershot".*?<a.*?<img src="(.*?)".*?' patronvideos += '<div id="post-title"><a href="(.*?)".*?' patronvideos += '<h3>(.*?)</h3>' matches = re.compile(patronvideos,re.DOTALL).findall(data) scrapertools.printMatches(matches) for match in matches: # Titulo UnicodeDecodedTitle = match[2].decode("utf-8") unescapedTitle = unescape (UnicodeDecodedTitle) scrapedtitle = unescapedTitle.encode("latin1","ignore") # URL scrapedurl = urlparse.urljoin(url,match[1]) # Thumbnail scrapedthumbnail = urlparse.urljoin(url,match[0]) # Argumento # Depuracion if (DEBUG): xbmc.output("scrapedtitle="+scrapedtitle) xbmc.output("scrapedurl="+scrapedurl) xbmc.output("scrapedthumbnail="+scrapedthumbnail) # Añade al listado de XBMC xbmctools.addthumbnailfolder( CHANNELNAME , scrapedtitle , scrapedurl , scrapedthumbnail, "detail" ) # Remove the next page mark patronvideos = '<a href="(http://cineblog01.com/film/category/numero/page/[0-9]+)">Avanti >' matches = re.compile (patronvideos, re.DOTALL). findall (data) scrapertools.printMatches (matches) if len(matches)>0: scrapedtitle = "Pagina seguente" scrapedurl = matches[0] scrapedthumbnail = "" scrapedplot = "" if (DEBUG): xbmc.output("scrapedtitle="+scrapedtitle) xbmc.output("scrapedurl="+scrapedurl) xbmc.output("scrapedthumbnail="+scrapedthumbnail) xbmctools.addnewfolder( CHANNELNAME , "listcat" , category , scrapedtitle , scrapedurl , scrapedthumbnail, scrapedplot ) # Label (top-right)... xbmcplugin.setPluginCategory( handle=pluginhandle, category=category ) # Disable sorting... xbmcplugin.addSortMethod( handle=pluginhandle, sortMethod=xbmcplugin.SORT_METHOD_NONE ) # End of directory... xbmcplugin.endOfDirectory( handle=pluginhandle, succeeded=True )
def pelisconficha(params,url,category): # fichas en listados por año y en estrenos logger.info("[divxonline.py] pelisconficha") # Descarga la página data = scrapertools.cachePage(url) #logger.info(data) # Extrae las entradas patronvideos = '<td class="contenido"><a href="(.*?)">' # link patronvideos += '<img src="(.*?)"' # cartel patronvideos += '.*?title="(.*?)"' # título # patronvideos += '.*?<b>Descripción:</b>(.*?)\.\.\.' matches = re.compile(patronvideos,re.DOTALL).findall(data) scrapertools.printMatches(matches) for match in matches: # Titulo scrapedtitle = removeacutes(match[2]) if (not Generate and Notas): score = anotador.getscore(match[2]) if (score != ""): scrapedtitle += " " + score # URL scrapedurl = urlparse.urljoin(url,match[0]) # url de la ficha divxonline scrapedurl = scrapedurl.replace("pelicula","pelicula-divx") # url de la página de reproducción # Thumbnail scrapedthumbnail = "" if LoadThumbs: scrapedthumbnail = match[1] # procesa el resto scrapeddescription = "" #match[3] # Depuracion if (DEBUG): logger.info("scrapedtitle="+scrapedtitle) logger.info("scrapedurl="+scrapedurl) logger.info("scrapedthumbnail="+scrapedthumbnail) # Añade al listado de XBMC xbmctools.addthumbnailfolder( CHANNELNAME , scrapedtitle , scrapedurl , scrapedthumbnail, "listmirrors" ) # añade siguiente página match = re.search('(.*?)(\d+?)(\.html)',url) logger.info("url="+url) pag = match.group(2) newpag = match.group(1) + str(int(pag)+1) + match.group(3) logger.info("newpag="+newpag) xbmctools.addnewfolder( CHANNELNAME , "pelisconficha" , CHANNELNAME , "Siguiente" , newpag , "", "" ) # Label (top-right)... xbmcplugin.setPluginCategory( handle=pluginhandle, category=category ) # Disable sorting... xbmcplugin.addSortMethod( handle=pluginhandle, sortMethod=xbmcplugin.SORT_METHOD_NONE ) # End of directory... xbmcplugin.endOfDirectory( handle=pluginhandle, succeeded=True )
def movielist(params,url,category): # pelis sin ficha (en listados por género) logger.info("[divxonline.py] movielist") # Descarga la página data = scrapertools.cachePage(url) #logger.info(data) data = stepinto(url,data,'Ver página:(.*?)</p>') # Extrae las entradas (carpetas) patronvideos = '<li><h2><a href="([^"]+?)">(.*?)</a>' matches = re.compile(patronvideos,re.DOTALL).findall(data) #scrapertools.printMatches(matches) if (Generate): f = open(config.DATA_PATH+'/films.tab', 'w') # fichero para obtener las notas for match in matches: # Titulo scrapedtitle = remove_html_tags(match[1]) if (not Generate and Notas): score = anotador.getscore(remove_html_tags(match[1])) if (score != ""): scrapedtitle += " " + score # URL scrapedurl = urlparse.urljoin(url,match[0]) # url de la ficha divxonline scrapedurl = scrapedurl.replace("pelicula","pelicula-divx") # url de la página de reproducción # Thumbnail #scrapedthumbnail = urlparse.urljoin(url,match[1]) scrapedthumbnail = "" # procesa el resto scrapeddescription = "" # Depuracion if (DEBUG): logger.info("scrapedtitle="+scrapedtitle) logger.info("scrapedurl="+scrapedurl) logger.info("scrapedthumbnail="+scrapedthumbnail) if (Generate): sanio = re.search('(.*?)\((.*?)\)',scrapedtitle) if (sanio): # si hay anio fareg = sanio.group(1) + "\t" + sanio.group(2) + "\t" + scrapedtitle else: fareg = scrapedtitle + "\t\t" + scrapedtitle f.write(fareg+"\n") # Añade al listado de XBMC xbmctools.addthumbnailfolder( CHANNELNAME , scrapedtitle , scrapedurl , scrapedthumbnail, "listmirrors" ) # Label (top-right)... xbmcplugin.setPluginCategory( handle=pluginhandle, category=category ) xbmcplugin.addSortMethod( handle=pluginhandle, sortMethod=xbmcplugin.SORT_METHOD_NONE ) xbmcplugin.endOfDirectory( handle=pluginhandle, succeeded=True ) if (Generate): f.close()
def movielist(params,url,category): xbmc.output("[pintadibujos.py] mainlist") if xbmctools.getPluginSetting("forceview")=="true": xbmc.executebuiltin("Container.SetViewMode(53)") #53=icons # Descarga la página data = scrapertools.cachePage(url) #xbmc.output(data) # Extrae las entradas (carpetas) patronvideos = '<td><a href="([^"]+)" target="_blank"><img SRC="([^"]+)"(| ALT=".*?") BORDER' matches = re.compile(patronvideos,re.DOTALL).findall(data) scrapertools.printMatches(matches) for match in matches: # Titulo if match[2] == "": longitud = len(match[1]) scrapedtitle = match[1][:longitud-4] scrapedtitle = scrapedtitle.replace("_"," ") else: scrapedtitle = match[2].replace(" ALT=","") scrapedtitle = scrapedtitle.replace('"','') # URL scrapedurl = urlparse.urljoin(url,match[0]) # Thumbnail scrapedthumbnail = urlparse.urljoin(url,match[1]) # procesa el resto scrapeddescription = "" # Depuracion if (DEBUG): xbmc.output("scrapedtitle="+scrapedtitle) xbmc.output("scrapedurl="+scrapedurl) xbmc.output("scrapedthumbnail="+scrapedthumbnail) # Añade al listado de XBMC xbmctools.addthumbnailfolder( CHANNELNAME , scrapedtitle , scrapedurl , scrapedthumbnail, "detail" ) # Label (top-right)... xbmcplugin.setPluginCategory( handle=pluginhandle, category=category ) # Disable sorting... xbmcplugin.addSortMethod( handle=pluginhandle, sortMethod=xbmcplugin.SORT_METHOD_NONE ) # End of directory... xbmcplugin.endOfDirectory( handle=pluginhandle, succeeded=True )
def novedades(params,url,category): logger.info("[delatv.py] novedades") # ------------------------------------------------------ # Descarga la página # ------------------------------------------------------ data = scrapertools.cachePage(url) #logger.info(data) # ------------------------------------------------------ # Extrae las películas # ------------------------------------------------------ #patron = '<div class="thumb">[^<]+<a href="([^"]+)"><img src="([^"]+)".*?alt="([^"]+)"/></a>' patron = '<div class="galleryitem">[^<]+' patron += '<h1>([^<]+)</h1>[^<]+' patron += '<a href="([^"]+)"><img src="([^"]+)"' matches = re.compile(patron,re.DOTALL).findall(data) if DEBUG: scrapertools.printMatches(matches) for match in matches: scrapedtitle = match[0] scrapedurl = match[1] scrapedthumbnail = match[2].replace(" ","%20") scrapedplot = "" if (DEBUG): logger.info("title=["+scrapedtitle+"], url=["+scrapedurl+"], thumbnail=["+scrapedthumbnail+"]") # Añade al listado de XBMC xbmctools.addnewfolder( CHANNELNAME , "servidores" , category , scrapedtitle , scrapedurl , scrapedthumbnail, scrapedplot ) # ------------------------------------------------------ # Extrae la página siguiente # ------------------------------------------------------ #patron = '<a href="([^"]+)" >\»\;</a>' patron = 'class="current">[^<]+</span><a href="([^"]+)"' matches = re.compile(patron,re.DOTALL).findall(data) if DEBUG: scrapertools.printMatches(matches) for match in matches: scrapedtitle = "!Pagina siguiente" scrapedurl = match scrapedthumbnail = "" scrapeddescription = "" if (DEBUG): logger.info("title=["+scrapedtitle+"], url=["+scrapedurl+"], thumbnail=["+scrapedthumbnail+"]") # Añade al listado de XBMC xbmctools.addthumbnailfolder( CHANNELNAME , scrapedtitle , scrapedurl , scrapedthumbnail, "novedades" ) # Label (top-right)... xbmcplugin.setPluginCategory( handle=pluginhandle, category=category ) xbmcplugin.addSortMethod( handle=pluginhandle, sortMethod=xbmcplugin.SORT_METHOD_NONE ) xbmcplugin.endOfDirectory( handle=pluginhandle, succeeded=True )
def videolist(params,url,category): xbmc.output("[yotix.py] videolist") # ------------------------------------------------------ # Descarga la página # ------------------------------------------------------ data = scrapertools.cachePage(url) #xbmc.output(data) # ------------------------------------------------------ # Extrae las entradas de la home como carpetas # ------------------------------------------------------ patron = '<div class="galleryitem">[^<]+' patron += '<h1><a title="([^"]+)"[^<]+</a></h1>[^<]+' patron += '<a href="([^"]+)"><img src="([^"]+)"' matches = re.compile(patron,re.DOTALL).findall(data) if DEBUG: scrapertools.printMatches(matches) for match in matches: # Atributos scrapedtitle = match[0].replace("–","-") scrapedurl = match[1] scrapedthumbnail = match[2] scrapedplot = "" if (DEBUG): xbmc.output("title=["+scrapedtitle+"], url=["+scrapedurl+"], thumbnail=["+scrapedthumbnail+"]") # Añade al listado de XBMC xbmctools.addnewfolder( CHANNELNAME , "listmirrors" , category , scrapedtitle , scrapedurl , scrapedthumbnail, scrapedplot ) # ------------------------------------------------------ # Extrae la página siguiente # ------------------------------------------------------ patron = '<a href="([^"]+)" >»</a>' matches = re.compile(patron,re.DOTALL).findall(data) if DEBUG: scrapertools.printMatches(matches) for match in matches: scrapedtitle = "Pagina siguiente" scrapedurl = match scrapedthumbnail = "" scrapeddescription = "" if (DEBUG): xbmc.output("title=["+scrapedtitle+"], url=["+scrapedurl+"], thumbnail=["+scrapedthumbnail+"]") # Añade al listado de XBMC xbmctools.addthumbnailfolder( CHANNELNAME , scrapedtitle , scrapedurl , scrapedthumbnail, "mainlist" ) # Label (top-right)... xbmcplugin.setPluginCategory( handle=pluginhandle, category=category ) xbmcplugin.addSortMethod( handle=pluginhandle, sortMethod=xbmcplugin.SORT_METHOD_NONE ) xbmcplugin.endOfDirectory( handle=pluginhandle, succeeded=True )
def movielist(params, url, category): logger.info("[pintadibujos.py] mainlist") # Descarga la página data = scrapertools.cachePage(url) #logger.info(data) # Extrae las entradas (carpetas) patronvideos = '<td><a href="([^"]+)" target="_blank"><img SRC="([^"]+)"(| ALT=".*?") BORDER' matches = re.compile(patronvideos, re.DOTALL).findall(data) scrapertools.printMatches(matches) for match in matches: # Titulo if match[2] == "": longitud = len(match[1]) scrapedtitle = match[1][:longitud - 4] scrapedtitle = scrapedtitle.replace("_", " ") else: scrapedtitle = match[2].replace(" ALT=", "") scrapedtitle = scrapedtitle.replace('"', '') # URL scrapedurl = urlparse.urljoin(url, match[0]) # Thumbnail scrapedthumbnail = urlparse.urljoin(url, match[1]) # procesa el resto scrapeddescription = "" # Depuracion if (DEBUG): logger.info("scrapedtitle=" + scrapedtitle) logger.info("scrapedurl=" + scrapedurl) logger.info("scrapedthumbnail=" + scrapedthumbnail) # Añade al listado de XBMC xbmctools.addthumbnailfolder(CHANNELNAME, scrapedtitle, scrapedurl, scrapedthumbnail, "detail") # Label (top-right)... xbmcplugin.setPluginCategory(handle=pluginhandle, category=category) # Disable sorting... xbmcplugin.addSortMethod(handle=pluginhandle, sortMethod=xbmcplugin.SORT_METHOD_NONE) # End of directory... xbmcplugin.endOfDirectory(handle=pluginhandle, succeeded=True)
def paginasiguientes(patronvideos, data, category, cat): # ------------------------------------------------------ # Extrae la p�gina siguiente # ------------------------------------------------------ patron = '</span><a href="([^"]+)"' matches = re.compile(patron, re.DOTALL).findall(data) #menutitle = "Volver Al Menu Principal" #menurl = "http://www.documentariestv.net/" if DEBUG: scrapertools.printMatches(matches) for match in matches: scrapedtitle = "Next Page" scrapedurl = "http://www.documentariestv.net/" + match scrapedthumbnail = os.path.join(IMAGES_PATH, 'next.png') scrapeddescription = "" # Depuracion if DEBUG: logger.info("scrapedtitle=" + scrapedtitle) logger.info("scrapedurl=" + scrapedurl) logger.info("scrapedthumbnail=" + scrapedthumbnail) if cat == 'tipo': # A�ade al listado de XBMC xbmctools.addthumbnailfolder(CHANNELNAME, scrapedtitle, scrapedurl, scrapedthumbnail, "listatipodocumental") elif cat == 'nuevo': xbmctools.addthumbnailfolder(CHANNELNAME, scrapedtitle, scrapedurl, scrapedthumbnail, "documentalesnuevoslist") elif cat == 'tag': xbmctools.addthumbnailfolder( CHANNELNAME, scrapedtitle, "http://www.documentariestv.net" + match, scrapedthumbnail, "tagdocumentaleslist") elif cat == 'busca': xbmctools.addthumbnailfolder(CHANNELNAME, scrapedtitle, scrapedurl, scrapedthumbnail, "searchresults") #xbmctools.addthumbnailfolder( CHANNELNAME , menutitle , menurl , "", "volvermenu" ) # Label (top-right)... xbmcplugin.setPluginCategory(handle=pluginhandle, category=category) # Disable sorting... xbmcplugin.addSortMethod(handle=pluginhandle, sortMethod=xbmcplugin.SORT_METHOD_NONE) # End of directory... xbmcplugin.endOfDirectory(handle=pluginhandle, succeeded=True)
def searchresults(params, url, category): logger.info("[sesionvip.py] searchresults") # Descarga la página data = scrapertools.cachePage(url) patronvideos = '<div class="entry">.*?' patronvideos += '<a href="([^"]+)" rel="bookmark">([^<]+)</a>' matches = re.compile(patronvideos, re.DOTALL).findall(data) scrapertools.printMatches(matches) for match in matches: # Titulo scrapedtitle = match[1] if not scrapedtitle.startswith("Descargar"): #Elimina todos los prefijos SEO scrapedtitle = xbmctools.unseo(scrapedtitle) # URL scrapedurl = urlparse.urljoin(url, match[0]) # Thumbnail scrapedthumbnail = "" # Argumento scrapedplot = "" # Depuracion if (DEBUG): logger.info("scrapedtitle=" + scrapedtitle) logger.info("scrapedurl=" + scrapedurl) logger.info("scrapedthumbnail=" + scrapedthumbnail) # Añade al listado de XBMC xbmctools.addthumbnailfolder(CHANNELNAME, scrapedtitle, scrapedurl, scrapedthumbnail, "listmirrors") # Label (top-right)... xbmcplugin.setPluginCategory(handle=int(sys.argv[1]), category=category) # Disable sorting... xbmcplugin.addSortMethod(handle=int(sys.argv[1]), sortMethod=xbmcplugin.SORT_METHOD_NONE) # End of directory... xbmcplugin.endOfDirectory(handle=int(sys.argv[1]), succeeded=True)
def searchresults(params,url,category): logger.info("[sesionvip.py] searchresults") # Descarga la página data = scrapertools.cachePage(url) patronvideos = '<div class="entry">.*?' patronvideos += '<a href="([^"]+)" rel="bookmark">([^<]+)</a>' matches = re.compile(patronvideos,re.DOTALL).findall(data) scrapertools.printMatches(matches) for match in matches: # Titulo scrapedtitle = match[1] if not scrapedtitle.startswith("Descargar"): #Elimina todos los prefijos SEO scrapedtitle = scrapertools.unseo(scrapedtitle) # URL scrapedurl = urlparse.urljoin(url,match[0]) # Thumbnail scrapedthumbnail = "" # Argumento scrapedplot = "" # Depuracion if (DEBUG): logger.info("scrapedtitle="+scrapedtitle) logger.info("scrapedurl="+scrapedurl) logger.info("scrapedthumbnail="+scrapedthumbnail) # Añade al listado de XBMC xbmctools.addthumbnailfolder( CHANNELNAME , scrapedtitle , scrapedurl , scrapedthumbnail, "listmirrors" ) # Label (top-right)... xbmcplugin.setPluginCategory( handle=int( sys.argv[ 1 ] ), category=category ) # Disable sorting... xbmcplugin.addSortMethod( handle=int( sys.argv[ 1 ] ), sortMethod=xbmcplugin.SORT_METHOD_NONE ) # End of directory... xbmcplugin.endOfDirectory( handle=int( sys.argv[ 1 ] ), succeeded=True )
def categorylist(params, url, category): xbmc.output("[kideoschannel.py] categorylist") # Carga la página actual data = scrapertools.cachePage("http://www.kideos.com/") # Pone el enlace para continuar con la siguiente página patron = '<a href="(http://kideos.com/category/[^"]+)"><h1>([^<]+)</h1></a>' matches = re.compile(patron, re.DOTALL).findall(data) scrapertools.printMatches(matches) for match in matches: # Titulo scrapedtitle = match[1] # URL scrapedurl = urlparse.urljoin(url, match[0]) # Thumbnail scrapedthumbnail = "" # Argumento scrapedplot = "" # Depuracion if (DEBUG): xbmc.output("scrapedtitle=" + scrapedtitle) xbmc.output("scrapedurl=" + scrapedurl) xbmc.output("scrapedthumbnail=" + scrapedthumbnail) # Añade al listado de XBMC xbmctools.addthumbnailfolder(CHANNELNAME, scrapedtitle, scrapedurl, scrapedthumbnail, "videolist") # Label (top-right)... xbmcplugin.setPluginCategory(handle=pluginhandle, category=category) # Disable sorting... xbmcplugin.addSortMethod(handle=pluginhandle, sortMethod=xbmcplugin.SORT_METHOD_NONE) # End of directory... xbmcplugin.endOfDirectory(handle=pluginhandle, succeeded=True)
def paginasiguientes(patronvideos, data, category, cat): # ------------------------------------------------------ # Extrae la p�gina siguiente # ------------------------------------------------------ patron = '</span><a href="([^"]+)"' matches = re.compile(patron, re.DOTALL).findall(data) # menutitle = "Volver Al Menu Principal" # menurl = "http://www.sonolatino.com/" if DEBUG: scrapertools.printMatches(matches) for match in matches: scrapedtitle = "Pagina siguiente" scrapedurl = "http://www.sonolatino.com/" + match scrapedthumbnail = os.path.join(IMAGES_PATH, "next.png") scrapeddescription = "" # Depuracion if DEBUG: logger.info("scrapedtitle=" + scrapedtitle) logger.info("scrapedurl=" + scrapedurl) logger.info("scrapedthumbnail=" + scrapedthumbnail) if cat == "tipo": # A�ade al listado de XBMC xbmctools.addthumbnailfolder(CHANNELNAME, scrapedtitle, scrapedurl, scrapedthumbnail, "listatipoVideo") elif cat == "nuevo": xbmctools.addthumbnailfolder(CHANNELNAME, scrapedtitle, scrapedurl, scrapedthumbnail, "Videosnuevoslist") elif cat == "tag": xbmctools.addthumbnailfolder( CHANNELNAME, scrapedtitle, "http://www.sonolatino.com.es/series" + match, scrapedthumbnail, "tagdocumentaleslist", ) elif cat == "busca": xbmctools.addthumbnailfolder(CHANNELNAME, scrapedtitle, scrapedurl, scrapedthumbnail, "searchresults") # xbmctools.addthumbnailfolder( CHANNELNAME , menutitle , menurl , "", "volvermenu" ) # Label (top-right)... xbmcplugin.setPluginCategory(handle=pluginhandle, category=category) # Disable sorting... xbmcplugin.addSortMethod(handle=pluginhandle, sortMethod=xbmcplugin.SORT_METHOD_NONE) # End of directory... xbmcplugin.endOfDirectory(handle=pluginhandle, succeeded=True)
def categorylist(params,url,category): xbmc.output("[kideos.py] categorylist") # Carga la página actual data = scrapertools.cachePage("http://www.kideos.com/") # Pone el enlace para continuar con la siguiente página patron = '<a href="(http://kideos.com/category/[^"]+)"><h1>([^<]+)</h1></a>' matches = re.compile(patron,re.DOTALL).findall(data) scrapertools.printMatches(matches) for match in matches: # Titulo scrapedtitle = match[1] # URL scrapedurl = urlparse.urljoin(url,match[0]) # Thumbnail scrapedthumbnail = "" # Argumento scrapedplot = "" # Depuracion if (DEBUG): xbmc.output("scrapedtitle="+scrapedtitle) xbmc.output("scrapedurl="+scrapedurl) xbmc.output("scrapedthumbnail="+scrapedthumbnail) # Añade al listado de XBMC xbmctools.addthumbnailfolder( CHANNELNAME , scrapedtitle , scrapedurl , scrapedthumbnail, "videolist" ) # Label (top-right)... xbmcplugin.setPluginCategory( handle=pluginhandle, category=category ) # Disable sorting... xbmcplugin.addSortMethod( handle=pluginhandle, sortMethod=xbmcplugin.SORT_METHOD_NONE ) # End of directory... xbmcplugin.endOfDirectory( handle=pluginhandle, succeeded=True )
def fulllist(params, url, category): # Descarga la página data = scrapertools.cachePage(url) # xbmc.output(data) # Extrae las entradas (carpetas) patronvideos = '<li><a href="([^"]+)"><span>([^<]+)</span></a></li>' matches = re.compile(patronvideos, re.DOTALL).findall(data) scrapertools.printMatches(matches) for match in matches: # Titulo scrapedtitle = match[1] # URL scrapedurl = urlparse.urljoin(url, match[0]) # Thumbnail scrapedthumbnail = "" # Argumento scrapeddescription = "" # Depuracion if DEBUG: xbmc.output("scrapedtitle=" + scrapedtitle) xbmc.output("scrapedurl=" + scrapedurl) xbmc.output("scrapedthumbnail=" + scrapedthumbnail) # Añade al listado de XBMC xbmctools.addthumbnailfolder(CHANNELNAME, scrapedtitle, scrapedurl, scrapedthumbnail, "detail") # Label (top-right)... xbmcplugin.setPluginCategory(handle=pluginhandle, category=category) # Disable sorting... xbmcplugin.addSortMethod(handle=pluginhandle, sortMethod=xbmcplugin.SORT_METHOD_NONE) # End of directory... xbmcplugin.endOfDirectory(handle=pluginhandle, succeeded=True)
def pelisconficha(params, url, category): # fichas en listados por año y en estrenos logger.info("[divxonline.py] pelisconficha") # Descarga la página data = scrapertools.cachePage(url) #logger.info(data) if (data.find('Películas del año') > 0): ##data=data[data.find('<!-- MENU IZQUIERDO -->'):] data = data[data.find('Películas del año'):] logger.info(data.find('<!-- MENU IZQUIERDO -->')) #logger.info(data) # Extrae las entradas patronvideos = '<td class="contenido"><a href="(.*?)">' # link patronvideos += '<img src="(.*?)"' # cartel patronvideos += '.*?title="(.*?)"' # título # patronvideos += '.*?<b>Descripción:</b>(.*?)\.\.\.' matches = re.compile(patronvideos, re.DOTALL).findall(data) scrapertools.printMatches(matches) for match in matches: # Titulo scrapedtitle = removeacutes(match[2]) if (not Generate and Notas): score = anotador.getscore(match[2]) if (score != ""): scrapedtitle += " " + score # URL scrapedurl = urlparse.urljoin(url, match[0]) # url de la ficha divxonline scrapedurl = scrapedurl.replace( "pelicula", "pelicula-divx") # url de la página de reproducción # Thumbnail scrapedthumbnail = "" if LoadThumbs: scrapedthumbnail = match[1] # procesa el resto scrapeddescription = "" #match[3] # Depuracion if (DEBUG): logger.info("scrapedtitle=" + scrapedtitle) logger.info("scrapedurl=" + scrapedurl) logger.info("scrapedthumbnail=" + scrapedthumbnail) # Añade al listado de XBMC xbmctools.addthumbnailfolder(CHANNELNAME, scrapedtitle, scrapedurl, scrapedthumbnail, "listmirrors") # añade siguiente página match = re.search('(.*?)(\d+?)(\.html)', url) logger.info("url=" + url) pag = match.group(2) newpag = match.group(1) + str(int(pag) + 1) + match.group(3) logger.info("newpag=" + newpag) xbmctools.addnewfolder(CHANNELNAME, "pelisconficha", CHANNELNAME, "Siguiente", newpag, "", "") # Label (top-right)... xbmcplugin.setPluginCategory(handle=pluginhandle, category=category) # Disable sorting... xbmcplugin.addSortMethod(handle=pluginhandle, sortMethod=xbmcplugin.SORT_METHOD_NONE) # End of directory... xbmcplugin.endOfDirectory(handle=pluginhandle, succeeded=True)
def videolist(params, url, category): xbmc.output("[veocine.py] mainlist") # ------------------------------------------------------ # Descarga la página # ------------------------------------------------------ data = scrapertools.cachePage(url) # xbmc.output(data) # ------------------------------------------------------ # Extrae las películas # ------------------------------------------------------ patron = "<tr.*?" patron += "<td.*?" patron += '<a href="([^"]+)">' patron += "<img src='([^']+)'.*?<a.*?>\s*(.*?)\s*<(.*?)" patron += "<img .*? alt='([^']+)' />" matches = re.compile(patron, re.DOTALL).findall(data) if DEBUG: scrapertools.printMatches(matches) for match in matches: try: scrapedtitle = unicode(match[2], "utf-8").encode("iso-8859-1") + " (" + match[4] + ")" except: scrapedtitle = match[2] + " (" + match[4] + ")" scrapedurl = urlparse.urljoin("http://www.veocine.es/", match[0]) scrapedthumbnail = "" try: scrapedplot = unicode(match[3], "utf-8").encode("iso-8859-1") except: scrapedplot = match[3] scrapedplot = scrapedplot.replace("/a>", "\n") scrapedplot = scrapedplot.replace("<br />", "\n") scrapedplot = scrapedplot.replace("<b>", "") scrapedplot = scrapedplot.replace("</b>", "") scrapedplot = scrapedplot.replace("<i>", "") scrapedplot = scrapedplot.replace("</i>", "") scrapedplot = scrapedplot.replace("<!--colorstart:#589BB9-->", "") scrapedplot = scrapedplot.replace("<!--colorend-->", "") scrapedplot = scrapedplot.replace("<!--/colorend-->", "") scrapedplot = scrapedplot.replace("<!--/colorstart-->", "") scrapedplot = scrapedplot.replace('<span style="color:#589BB9">', "") scrapedplot = scrapedplot.replace("</span>", "") scrapedplot = scrapedplot.strip() # Depuracion if DEBUG: xbmc.output("scrapedtitle=" + scrapedtitle) xbmc.output("scrapedurl=" + scrapedurl) xbmc.output("scrapedthumbnail=" + scrapedthumbnail) xbmc.output("scrapedplot=" + scrapedplot) # Añade al listado de XBMC xbmctools.addnewfolder( CHANNELNAME, "listmirrors", category, scrapedtitle, scrapedurl, scrapedthumbnail, scrapedplot ) # ------------------------------------------------------ # Extrae la página siguiente # ------------------------------------------------------ patron = "<a href='([^']+)'>Siguiente</a>" matches = re.compile(patron, re.DOTALL).findall(data) if DEBUG: scrapertools.printMatches(matches) for match in matches: scrapedtitle = "Pagina siguiente" scrapedurl = urlparse.urljoin("http://www.veocine.es/", match) scrapedthumbnail = "" scrapeddescription = "" # Depuracion if DEBUG: xbmc.output("scrapedtitle=" + scrapedtitle) xbmc.output("scrapedurl=" + scrapedurl) xbmc.output("scrapedthumbnail=" + scrapedthumbnail) # Añade al listado de XBMC xbmctools.addthumbnailfolder(CHANNELNAME, scrapedtitle, scrapedurl, scrapedthumbnail, "mainlist") # Label (top-right)... xbmcplugin.setPluginCategory(handle=pluginhandle, category=category) # Disable sorting... xbmcplugin.addSortMethod(handle=pluginhandle, sortMethod=xbmcplugin.SORT_METHOD_NONE) # End of directory... xbmcplugin.endOfDirectory(handle=pluginhandle, succeeded=True)
def newlist(params, url, category): logger.info("[sesionvip.py] newlist") # Descarga la página data = scrapertools.cachePage(url) #logger.info(data) ''' <div class="entry"><!-- Entry --> <h3 class="post-title"> <a href="http://www.sesionvip.com/ver-online-millennium-2-la-chica-que-sonaba-con-una-cerilla-y-un-bidon-de-gasolina-en-alta-calidad" rel="bookmark">ver online millennium 2 La Chica Que Soñaba Con Una Cerilla Y Un Bidón De Gasolina en alta calidad</a> </h3> <p style="text-align: center;">YA DISPONIBLE – CALIDAD TS-SCREENER ALTO</p> <p style="text-align: center;"><img class="aligncenter size-medium wp-image-9125" title="peliculas online" src="http://www.sesionvip.com/wp-content/uploads/2009/08/1843318212-222x300.jpg" alt="peliculas online" width="222" height="300" /></p> <p style="text-align: left;"> <a href="http://www.sesionvip.com/ver-online-millennium-2-la-chica-que-sonaba-con-una-cerilla-y-un-bidon-de-gasolina-en-alta-calidad#more-9124" class="more-link">PULSA AQUI PARA <strong>Ver la pelicula online</strong></a></p> <div id="postmeta" class="postmetabox"> Categoria: <a href="http://www.sesionvip.com/category/estrenos-online" title="Ver todas las entradas en Estrenos Online" rel="category tag">Estrenos Online</a> <br/><a href="http://www.sesionvip.com/ver-online-millennium-2-la-chica-que-sonaba-con-una-cerilla-y-un-bidon-de-gasolina-en-alta-calidad#comments" title="Comentarios en ver online millennium 2 La Chica Que Soñaba Con Una Cerilla Y Un Bidón De Gasolina en alta calidad"><strong>Comments (3)</strong></a> </div> </div><!--/entry--> ''' # Extrae las entradas (carpetas) patronvideos = '<div class="entry"><!-- Entry -->(.*?)<!--/entry-->' matches = re.compile(patronvideos, re.DOTALL).findall(data) scrapertools.printMatches(matches) for match in matches: logger.info("match=" + match) nuevopatron = '<a href="([^"]+)" rel="bookmark">([^<]+)</a>' #<img.*?src="([^"]+)"' nuevomatches = re.compile(nuevopatron, re.DOTALL).findall(match) logger.info("len(nuevomatches)=%d" % len(nuevomatches)) scrapertools.printMatches(nuevomatches) # Titulo scrapedtitle = nuevomatches[0][1] if not scrapedtitle.startswith("Descargar"): #Elimina todos los prefijos SEO scrapedtitle = xbmctools.unseo(scrapedtitle) # URL scrapedurl = urlparse.urljoin(url, nuevomatches[0][0]) # Thumbnail scrapedthumbnail = "" #urlparse.urljoin(url,nuevomatches[2]) # Argumento scrapedplot = "" # Depuracion if (DEBUG): logger.info("scrapedtitle=" + scrapedtitle) logger.info("scrapedurl=" + scrapedurl) logger.info("scrapedthumbnail=" + scrapedthumbnail) # Añade al listado de XBMC xbmctools.addthumbnailfolder(CHANNELNAME, scrapedtitle, scrapedurl, scrapedthumbnail, "listmirrors") # Página siguiente patronvideos = '<div class="back"><a href="([^"]+)"' matches = re.compile(patronvideos, re.DOTALL).findall(data) scrapertools.printMatches(matches) for match in matches: # Titulo scrapedtitle = "Página siguiente" # URL scrapedurl = urlparse.urljoin(url, match) # Thumbnail scrapedthumbnail = "" # Argumento scrapedplot = "" # Depuracion if (DEBUG): logger.info("scrapedtitle=" + scrapedtitle) logger.info("scrapedurl=" + scrapedurl) logger.info("scrapedthumbnail=" + scrapedthumbnail) # Añade al listado de XBMC xbmctools.addthumbnailfolder(CHANNELNAME, scrapedtitle, scrapedurl, scrapedthumbnail, "newlist") # Label (top-right)... xbmcplugin.setPluginCategory(handle=pluginhandle, category=category) # Disable sorting... xbmcplugin.addSortMethod(handle=pluginhandle, sortMethod=xbmcplugin.SORT_METHOD_NONE) # End of directory... xbmcplugin.endOfDirectory(handle=pluginhandle, succeeded=True)
def pelisconfichaB(params,url,category): # fichas con formato en entradas alfabéticas logger.info("[divxonline.py] pelisconfichaB") t0 = time.time() # Descarga la página data = scrapertools.cachePage(url) #logger.info(data) # carga N páginas N = 10 match = re.search('(.*?)(\d+?)(\.html)',url) pag = int(match.group(2)) #logger.info("pag="+match.group(2)) for i in range(pag+1,pag+N): newurl = match.group(1) + str(i) + match.group(3) data += scrapertools.cachePage(newurl) nexturl = match.group(1) + str(pag+N) + match.group(3) # Extrae las entradas data=data[data.find('Películas online por orden alfabético'):] logger.info(data) patronvideos = '<td class="contenido"><img src="(.*?)"' # cartel patronvideos += '.*?alt="(.*?)"' # título patronvideos += '.*?<b>Sinopsis.*?<a href="(.*?)"' # url matches = re.compile(patronvideos,re.DOTALL).findall(data) scrapertools.printMatches(matches) for match in matches: # Titulo scrapedtitle = removeacutes(match[1]) # 7.49 seg # scrapedtitle = match[1] # 7.33 seg if (not Generate and Notas): score = anotador.getscore(match[1]) if (score != ""): scrapedtitle += " " + score # URL scrapedurl = urlparse.urljoin(url,match[2]) # url de la ficha divxonline scrapedurl = scrapedurl.replace("pelicula","pelicula-divx") # url de la página de reproducción # Thumbnail scrapedthumbnail = "" if LoadThumbs: scrapedthumbnail = match[0] # procesa el resto scrapeddescription = "" # match[3] # Depuracion if (DEBUG): logger.info("scrapedtitle="+scrapedtitle) logger.info("scrapedurl="+scrapedurl) logger.info("scrapedthumbnail="+scrapedthumbnail) # Añade al listado de XBMC xbmctools.addthumbnailfolder( CHANNELNAME , scrapedtitle , scrapedurl , scrapedthumbnail, "listmirrors" ) # añade siguiente página xbmctools.addnewfolder( CHANNELNAME , "pelisconfichaB" , CHANNELNAME , "Siguiente" , nexturl , "", "" ) # Label (top-right)... xbmcplugin.setPluginCategory( handle=pluginhandle, category=category ) xbmcplugin.addSortMethod( handle=pluginhandle, sortMethod=xbmcplugin.SORT_METHOD_NONE ) xbmcplugin.endOfDirectory( handle=pluginhandle, succeeded=True ) if DEBUG: logger.info("Tiempo de ejecución = "+str(time.time()-t0))
def videolist(params, url, category): xbmc.output("[kideoschannel.py] videolist") # Carga la página actual data = scrapertools.cachePage(url) addvideopage(data, params, url, category) # Obtiene el enlace a la página siguiente patron = '<div id="next">[^<]+<a href="([^"]+)">' matches = re.compile(patron, re.DOTALL).findall(data) if len(matches) > 0: url = urlparse.urljoin(url, matches[0]) xbmc.output("url siguiente=" + url) # Carga la página siguiente data = scrapertools.cachePage(url) addvideopage(data, params, url, category) # Obtiene el enlace a la página siguiente patron = '<div id="next">[^<]+<a href="([^"]+)">' matches = re.compile(patron, re.DOTALL).findall(data) if len(matches) > 0: url = urlparse.urljoin(url, matches[0]) xbmc.output("url siguiente=" + url) # Carga la página siguiente data = scrapertools.cachePage(url) addvideopage(data, params, url, category) # Pone el enlace para continuar con la siguiente página patron = '<div id="next">[^<]+<a href="([^"]+)">' matches = re.compile(patron, re.DOTALL).findall(data) scrapertools.printMatches(matches) for match in matches: # Titulo scrapedtitle = xbmc.getLocalizedString(30900) # URL scrapedurl = urlparse.urljoin(url, match) # Thumbnail scrapedthumbnail = "" # Argumento scrapedplot = "" # Depuracion if (DEBUG): try: xbmc.output("scrapedtitle=" + scrapedtitle) except: xbmc.output("scrapedtitle=<unicode>") xbmc.output("scrapedurl=" + scrapedurl) xbmc.output("scrapedthumbnail=" + scrapedthumbnail) # Añade al listado de XBMC xbmctools.addthumbnailfolder(CHANNELNAME, scrapedtitle, scrapedurl, scrapedthumbnail, "videolist") # Label (top-right)... xbmcplugin.setPluginCategory(handle=pluginhandle, category=category) # Disable sorting... xbmcplugin.addSortMethod(handle=pluginhandle, sortMethod=xbmcplugin.SORT_METHOD_NONE) # End of directory... xbmcplugin.endOfDirectory(handle=pluginhandle, succeeded=True)
def movielist(params, url, category): logger.info("[descargacineclasico.py] mainlist") # Descarga la página data = scrapertools.cachePage(url) #logger.info(data) # Extrae las entradas (carpetas) patronvideos = "<h3>\n<a href='([^']+)'>(.*?)</a>" patronvideos += '.*?<a onblur=.*?src="(.*?)"' # cartel # patronvideos += ".*?SINOPSIS:(.*?)(PUBLICADO POR" # sinopsis matches = re.compile(patronvideos, re.DOTALL).findall(data) #scrapertools.printMatches(matches) if (Generate): f = open(config.DATA_PATH + '/films.tab', 'w') # fichero para obtener las notas for match in matches: # Titulo scrapedtitle = match[1] scrapedtitle = scrapedtitle.replace('¡', '') # ¡ scrapedtitle = scrapedtitle.replace('¿', '') # ¿ logger.info(scrapedtitle) # if (not Generate): # score = anotador.getscore(match[1]) # if (score != ""): # scrapedtitle += " " + score # URL scrapedurl = urlparse.urljoin( url, match[0]) # url de la ficha descargacineclasico # Thumbnail # scrapedthumbnail = urlparse.urljoin(url,match[2]) scrapedthumbnail = "" if LoadThumbnails: scrapedthumbnail = match[2].replace("s200", "s1600") # procesa el resto # scrapeddescription = match[3] scrapeddescription = "" # Depuracion if (DEBUG): logger.info("scrapedtitle=" + scrapedtitle) logger.info("scrapedurl=" + scrapedurl) logger.info("scrapedthumbnail=" + scrapedthumbnail) if (Generate): sanio = re.search('(.*?)\((.*?)\)', scrapedtitle) if (sanio): # si hay anio fareg = sanio.group(1) + "\t" + sanio.group( 2) + "\t" + scrapedtitle else: fareg = scrapedtitle + "\t\t" + scrapedtitle f.write(fareg + "\n") # Añade al listado de XBMC xbmctools.addthumbnailfolder(CHANNELNAME, scrapedtitle, scrapedurl, scrapedthumbnail, "detail") # Label (top-right)... xbmcplugin.setPluginCategory(handle=pluginhandle, category=category) # Disable sorting... xbmcplugin.addSortMethod(handle=pluginhandle, sortMethod=xbmcplugin.SORT_METHOD_NONE) # End of directory... xbmcplugin.endOfDirectory(handle=pluginhandle, succeeded=True) if (Generate): f.close()
def videolist(params,url,category): xbmc.output("[totlolchannel.py] videolist") # Carga la página actual data = scrapertools.cachePage(url) addvideopage(data,params,url,category) # Obtiene el enlace a la página siguiente #http://www.totlol.com/search?&page=2&u=&c=&search_id=pocoyo patron = '<a class="paging-pagelink" href="([^"]+)">Next \>\;</a>' matches = re.compile(patron,re.DOTALL).findall(data) if len(matches)>0: url = urlparse.urljoin(url,matches[0].replace("&","&")) xbmc.output("url siguiente="+url) # Carga la página siguiente data = scrapertools.cachePage(url) addvideopage(data,params,url,category) # Obtiene el enlace a la página siguiente patron = '<a class="paging-pagelink" href="([^"]+)">Next \>\;</a>' matches = re.compile(patron,re.DOTALL).findall(data) if len(matches)>0: url = urlparse.urljoin(url,matches[0].replace("&","&")) xbmc.output("url siguiente="+url) # Carga la página siguiente data = scrapertools.cachePage(url) addvideopage(data,params,url,category) # Pone el enlace para continuar con la siguiente página patron = '<a class="paging-pagelink" href="([^"]+)">Next \>\;</a>' matches = re.compile(patron,re.DOTALL).findall(data) scrapertools.printMatches(matches) for match in matches: # Titulo scrapedtitle = xbmc.getLocalizedString( 30701 ) # URL scrapedurl = urlparse.urljoin(url,match.replace("&","&")) # Thumbnail scrapedthumbnail = "" # Argumento scrapedplot = "" # Depuracion if (DEBUG): try: xbmc.output("scrapedtitle="+scrapedtitle) except: xbmc.output("scrapedtitle=<unicode>") xbmc.output("scrapedurl="+scrapedurl) xbmc.output("scrapedthumbnail="+scrapedthumbnail) # Añade al listado de XBMC xbmctools.addthumbnailfolder( CHANNELNAME , scrapedtitle , scrapedurl , scrapedthumbnail, "videolist" ) # Label (top-right)... xbmcplugin.setPluginCategory( handle=pluginhandle, category=category ) # Disable sorting... xbmcplugin.addSortMethod( handle=pluginhandle, sortMethod=xbmcplugin.SORT_METHOD_NONE ) # End of directory... xbmcplugin.endOfDirectory( handle=pluginhandle, succeeded=True )
def videolist(params,url,category): xbmc.output("[kideos.py] videolist") # Carga la página actual data = scrapertools.cachePage(url) addvideopage(data,params,url,category) # Obtiene el enlace a la página siguiente patron = '<div id="next">[^<]+<a href="([^"]+)">' matches = re.compile(patron,re.DOTALL).findall(data) if len(matches)>0: url = urlparse.urljoin(url,matches[0]) xbmc.output("url siguiente="+url) # Carga la página siguiente data = scrapertools.cachePage(url) addvideopage(data,params,url,category) # Obtiene el enlace a la página siguiente patron = '<div id="next">[^<]+<a href="([^"]+)">' matches = re.compile(patron,re.DOTALL).findall(data) if len(matches)>0: url = urlparse.urljoin(url,matches[0]) xbmc.output("url siguiente="+url) # Carga la página siguiente data = scrapertools.cachePage(url) addvideopage(data,params,url,category) # Pone el enlace para continuar con la siguiente página patron = '<div id="next">[^<]+<a href="([^"]+)">' matches = re.compile(patron,re.DOTALL).findall(data) scrapertools.printMatches(matches) for match in matches: # Titulo scrapedtitle = xbmc.getLocalizedString( 30900 ) # URL scrapedurl = urlparse.urljoin(url,match) # Thumbnail scrapedthumbnail = "" # Argumento scrapedplot = "" # Depuracion if (DEBUG): try: xbmc.output("scrapedtitle="+scrapedtitle) except: xbmc.output("scrapedtitle=<unicode>") xbmc.output("scrapedurl="+scrapedurl) xbmc.output("scrapedthumbnail="+scrapedthumbnail) # Añade al listado de XBMC xbmctools.addthumbnailfolder( CHANNELNAME , scrapedtitle , scrapedurl , scrapedthumbnail, "videolist" ) # Label (top-right)... xbmcplugin.setPluginCategory( handle=pluginhandle, category=category ) # Disable sorting... xbmcplugin.addSortMethod( handle=pluginhandle, sortMethod=xbmcplugin.SORT_METHOD_NONE ) # End of directory... xbmcplugin.endOfDirectory( handle=pluginhandle, succeeded=True )
def newlist(params,url,category): logger.info("[sesionvip.py] newlist") # Descarga la página data = scrapertools.cachePage(url) #logger.info(data) ''' <div class="entry"><!-- Entry --> <h3 class="post-title"> <a href="http://www.sesionvip.com/ver-online-millennium-2-la-chica-que-sonaba-con-una-cerilla-y-un-bidon-de-gasolina-en-alta-calidad" rel="bookmark">ver online millennium 2 La Chica Que Soñaba Con Una Cerilla Y Un Bidón De Gasolina en alta calidad</a> </h3> <p style="text-align: center;">YA DISPONIBLE – CALIDAD TS-SCREENER ALTO</p> <p style="text-align: center;"><img class="aligncenter size-medium wp-image-9125" title="peliculas online" src="http://www.sesionvip.com/wp-content/uploads/2009/08/1843318212-222x300.jpg" alt="peliculas online" width="222" height="300" /></p> <p style="text-align: left;"> <a href="http://www.sesionvip.com/ver-online-millennium-2-la-chica-que-sonaba-con-una-cerilla-y-un-bidon-de-gasolina-en-alta-calidad#more-9124" class="more-link">PULSA AQUI PARA <strong>Ver la pelicula online</strong></a></p> <div id="postmeta" class="postmetabox"> Categoria: <a href="http://www.sesionvip.com/category/estrenos-online" title="Ver todas las entradas en Estrenos Online" rel="category tag">Estrenos Online</a> <br/><a href="http://www.sesionvip.com/ver-online-millennium-2-la-chica-que-sonaba-con-una-cerilla-y-un-bidon-de-gasolina-en-alta-calidad#comments" title="Comentarios en ver online millennium 2 La Chica Que Soñaba Con Una Cerilla Y Un Bidón De Gasolina en alta calidad"><strong>Comments (3)</strong></a> </div> </div><!--/entry--> ''' # Extrae las entradas (carpetas) patronvideos = '<div class="entry"><!-- Entry -->(.*?)<!--/entry-->' matches = re.compile(patronvideos,re.DOTALL).findall(data) scrapertools.printMatches(matches) for match in matches: logger.info("match="+match) nuevopatron = '<a href="([^"]+)" rel="bookmark">([^<]+)</a>'#<img.*?src="([^"]+)"' nuevomatches = re.compile(nuevopatron,re.DOTALL).findall(match) logger.info("len(nuevomatches)=%d" % len(nuevomatches)) scrapertools.printMatches(nuevomatches) # Titulo scrapedtitle = nuevomatches[0][1] if not scrapedtitle.startswith("Descargar"): #Elimina todos los prefijos SEO scrapedtitle = scrapertools.unseo(scrapedtitle) # URL scrapedurl = urlparse.urljoin(url,nuevomatches[0][0]) # Thumbnail scrapedthumbnail = ""#urlparse.urljoin(url,nuevomatches[2]) # Argumento scrapedplot = "" # Depuracion if (DEBUG): logger.info("scrapedtitle="+scrapedtitle) logger.info("scrapedurl="+scrapedurl) logger.info("scrapedthumbnail="+scrapedthumbnail) # Añade al listado de XBMC xbmctools.addthumbnailfolder( CHANNELNAME , scrapedtitle , scrapedurl , scrapedthumbnail, "listmirrors" ) # Página siguiente patronvideos = '<div class="back"><a href="([^"]+)"' matches = re.compile(patronvideos,re.DOTALL).findall(data) scrapertools.printMatches(matches) for match in matches: # Titulo scrapedtitle = "Página siguiente" # URL scrapedurl = urlparse.urljoin(url,match) # Thumbnail scrapedthumbnail = "" # Argumento scrapedplot = "" # Depuracion if (DEBUG): logger.info("scrapedtitle="+scrapedtitle) logger.info("scrapedurl="+scrapedurl) logger.info("scrapedthumbnail="+scrapedthumbnail) # Añade al listado de XBMC xbmctools.addthumbnailfolder( CHANNELNAME , scrapedtitle , scrapedurl , scrapedthumbnail, "newlist" ) # Label (top-right)... xbmcplugin.setPluginCategory( handle=pluginhandle, category=category ) # Disable sorting... xbmcplugin.addSortMethod( handle=pluginhandle, sortMethod=xbmcplugin.SORT_METHOD_NONE ) # End of directory... xbmcplugin.endOfDirectory( handle=pluginhandle, succeeded=True )
def toplist(params,url,category): xbmc.output("[documentariestv.py] toplist") # Descarga la p�gina data = scrapertools.cachePage(url) #xbmc.output(data) # Extrae las entradas (carpetas) xbmc.output("[documentariestv.py] toplist "+url) if url== "http://www.documentariestv.net/topvideos.html?do=recent": patronvideos = '<tr>[^>]+>([^<]+)</td>' patronvideos += '[^>]+><a href="([^"]+)">' patronvideos += '<img src="([^"]+)" alt="" class[^>]+>' patronvideos += '</a></td>[^>]+>([^<]+)</td>[^>]+>' patronvideos += '<a href="[^"]+">([^<]+)</a>' patronvideos += '</td>[^>]+>([^<]+)</td>' else: patronvideos = '<tr>[^>]+>([^<]+)</td>' patronvideos += '[^>]+><a href="([^"]+)">' patronvideos += '<img src="([^"]+)"' patronvideos += ' alt="([^"]+)"[^>]+>' patronvideos += '</a></td>[^>]+>([^<]+)</td>[^>]+>' patronvideos += '<a href="[^"]+">[^>]+></td>[^>]+>([^<]+)</td>' matches = re.compile(patronvideos,re.DOTALL).findall(data) scrapertools.printMatches(matches) for match in matches: # Titulo scrapedtitle = acentos(match[3]) # URL scrapedurl = match[1] # Thumbnail scrapedthumbnail = match[2] # procesa el resto scrapedplot = match[4]+" - " + "Views : "+match[5]+" times" # Depuracion if (DEBUG): xbmc.output("scrapedtitle="+scrapedtitle) xbmc.output("scrapedurl="+scrapedurl) xbmc.output("scrapedthumbnail="+scrapedthumbnail) # A�ade al listado de XBMC # xbmctools.addnewvideo( CHANNELNAME , "detail" , category , "directo" , match[0]+") "+scrapedtitle + " - " + scrapedplot , scrapedurl , scrapedthumbnail , scrapedplot ) xbmctools.addthumbnailfolder( CHANNELNAME , match[0]+") "+scrapedtitle+" - "+scrapedplot, scrapedurl , scrapedthumbnail, "detail" ) # Label (top-right)... xbmcplugin.setPluginCategory( handle=int( sys.argv[ 1 ] ), category=category ) # Disable sorting... xbmcplugin.addSortMethod( handle=int( sys.argv[ 1 ] ), sortMethod=xbmcplugin.SORT_METHOD_NONE ) # End of directory... xbmcplugin.endOfDirectory( handle=int( sys.argv[ 1 ] ), succeeded=True )
def toplist(params, url, category): logger.info("[documentariestv.py] toplist") # Descarga la p�gina data = scrapertools.cachePage(url) #logger.info(data) # Extrae las entradas (carpetas) logger.info("[documentariestv.py] toplist " + url) if url == "http://www.documentariestv.net/topvideos.html?do=recent": patronvideos = '<tr>[^>]+>([^<]+)</td>' patronvideos += '[^>]+><a href="([^"]+)">' patronvideos += '<img src="([^"]+)" alt="" class[^>]+>' patronvideos += '</a></td>[^>]+>([^<]+)</td>[^>]+>' patronvideos += '<a href="[^"]+">([^<]+)</a>' patronvideos += '</td>[^>]+>([^<]+)</td>' else: patronvideos = '<tr>[^>]+>([^<]+)</td>' patronvideos += '[^>]+><a href="([^"]+)">' patronvideos += '<img src="([^"]+)"' patronvideos += ' alt="([^"]+)"[^>]+>' patronvideos += '</a></td>[^>]+>([^<]+)</td>[^>]+>' patronvideos += '<a href="[^"]+">[^>]+></td>[^>]+>([^<]+)</td>' matches = re.compile(patronvideos, re.DOTALL).findall(data) scrapertools.printMatches(matches) for match in matches: # Titulo scrapedtitle = acentos(match[3]) # URL scrapedurl = match[1] # Thumbnail scrapedthumbnail = match[2] # procesa el resto scrapedplot = match[4] + " - " + "Views : " + match[5] + " times" # Depuracion if (DEBUG): logger.info("scrapedtitle=" + scrapedtitle) logger.info("scrapedurl=" + scrapedurl) logger.info("scrapedthumbnail=" + scrapedthumbnail) # A�ade al listado de XBMC # xbmctools.addnewvideo( CHANNELNAME , "detail" , category , "directo" , match[0]+") "+scrapedtitle + " - " + scrapedplot , scrapedurl , scrapedthumbnail , scrapedplot ) xbmctools.addthumbnailfolder( CHANNELNAME, match[0] + ") " + scrapedtitle + " - " + scrapedplot, scrapedurl, scrapedthumbnail, "detail") # Label (top-right)... xbmcplugin.setPluginCategory(handle=int(sys.argv[1]), category=category) # Disable sorting... xbmcplugin.addSortMethod(handle=int(sys.argv[1]), sortMethod=xbmcplugin.SORT_METHOD_NONE) # End of directory... xbmcplugin.endOfDirectory(handle=int(sys.argv[1]), succeeded=True)
def videolist(params, url, category): logger.info("[veocine.py] mainlist") # ------------------------------------------------------ # Descarga la página # ------------------------------------------------------ data = scrapertools.cachePage(url) #logger.info(data) # ------------------------------------------------------ # Extrae las películas # ------------------------------------------------------ patron = '<tr.*?' patron += '<td.*?' patron += '<a href="([^"]+)">' patron += "<img src='([^']+)'.*?<a.*?>\s*(.*?)\s*<(.*?)" patron += "<img .*? alt='([^']+)' />" matches = re.compile(patron, re.DOTALL).findall(data) if DEBUG: scrapertools.printMatches(matches) for match in matches: try: scrapedtitle = unicode( match[2], "utf-8").encode("iso-8859-1") + " (" + match[4] + ")" except: scrapedtitle = match[2] + " (" + match[4] + ")" scrapedurl = urlparse.urljoin("http://www.veocine.es/", match[0]) scrapedthumbnail = "" try: scrapedplot = unicode(match[3], "utf-8").encode("iso-8859-1") except: scrapedplot = match[3] scrapedplot = scrapedplot.replace("/a>", "\n") scrapedplot = scrapedplot.replace("<br />", "\n") scrapedplot = scrapedplot.replace("<b>", "") scrapedplot = scrapedplot.replace("</b>", "") scrapedplot = scrapedplot.replace("<i>", "") scrapedplot = scrapedplot.replace("</i>", "") scrapedplot = scrapedplot.replace("<!--colorstart:#589BB9-->", "") scrapedplot = scrapedplot.replace("<!--colorend-->", "") scrapedplot = scrapedplot.replace("<!--/colorend-->", "") scrapedplot = scrapedplot.replace("<!--/colorstart-->", "") scrapedplot = scrapedplot.replace('<span style="color:#589BB9">', "") scrapedplot = scrapedplot.replace("</span>", "") scrapedplot = scrapedplot.strip() # Depuracion if DEBUG: logger.info("scrapedtitle=" + scrapedtitle) logger.info("scrapedurl=" + scrapedurl) logger.info("scrapedthumbnail=" + scrapedthumbnail) logger.info("scrapedplot=" + scrapedplot) # Añade al listado de XBMC xbmctools.addnewfolder(CHANNELNAME, "listmirrors", category, scrapedtitle, scrapedurl, scrapedthumbnail, scrapedplot) # ------------------------------------------------------ # Extrae la página siguiente # ------------------------------------------------------ patron = "<a href='([^']+)'>Siguiente</a>" matches = re.compile(patron, re.DOTALL).findall(data) if DEBUG: scrapertools.printMatches(matches) for match in matches: scrapedtitle = "Pagina siguiente" scrapedurl = urlparse.urljoin("http://www.veocine.es/", match) scrapedthumbnail = "" scrapeddescription = "" # Depuracion if DEBUG: logger.info("scrapedtitle=" + scrapedtitle) logger.info("scrapedurl=" + scrapedurl) logger.info("scrapedthumbnail=" + scrapedthumbnail) # Añade al listado de XBMC xbmctools.addthumbnailfolder(CHANNELNAME, scrapedtitle, scrapedurl, scrapedthumbnail, "mainlist") # Label (top-right)... xbmcplugin.setPluginCategory(handle=pluginhandle, category=category) # Disable sorting... xbmcplugin.addSortMethod(handle=pluginhandle, sortMethod=xbmcplugin.SORT_METHOD_NONE) # End of directory... xbmcplugin.endOfDirectory(handle=pluginhandle, succeeded=True)
def pelisconfichaB(params, url, category): # fichas con formato en entradas alfabéticas logger.info("[divxonline.py] pelisconfichaB") t0 = time.time() # Descarga la página data = scrapertools.cachePage(url) #logger.info(data) # carga N páginas N = 10 match = re.search('(.*?)(\d+?)(\.html)', url) pag = int(match.group(2)) #logger.info("pag="+match.group(2)) for i in range(pag + 1, pag + N): newurl = match.group(1) + str(i) + match.group(3) data += scrapertools.cachePage(newurl) nexturl = match.group(1) + str(pag + N) + match.group(3) # Extrae las entradas data = data[data.find('Películas online por orden alfabético'):] logger.info(data) patronvideos = '<td class="contenido"><img src="(.*?)"' # cartel patronvideos += '.*?alt="(.*?)"' # título patronvideos += '.*?<b>Sinopsis.*?<a href="(.*?)"' # url matches = re.compile(patronvideos, re.DOTALL).findall(data) scrapertools.printMatches(matches) for match in matches: # Titulo scrapedtitle = removeacutes(match[1]) # 7.49 seg # scrapedtitle = match[1] # 7.33 seg if (not Generate and Notas): score = anotador.getscore(match[1]) if (score != ""): scrapedtitle += " " + score # URL scrapedurl = urlparse.urljoin(url, match[2]) # url de la ficha divxonline scrapedurl = scrapedurl.replace( "pelicula", "pelicula-divx") # url de la página de reproducción # Thumbnail scrapedthumbnail = "" if LoadThumbs: scrapedthumbnail = match[0] # procesa el resto scrapeddescription = "" # match[3] # Depuracion if (DEBUG): logger.info("scrapedtitle=" + scrapedtitle) logger.info("scrapedurl=" + scrapedurl) logger.info("scrapedthumbnail=" + scrapedthumbnail) # Añade al listado de XBMC xbmctools.addthumbnailfolder(CHANNELNAME, scrapedtitle, scrapedurl, scrapedthumbnail, "listmirrors") # añade siguiente página xbmctools.addnewfolder(CHANNELNAME, "pelisconfichaB", CHANNELNAME, "Siguiente", nexturl, "", "") # Label (top-right)... xbmcplugin.setPluginCategory(handle=pluginhandle, category=category) xbmcplugin.addSortMethod(handle=pluginhandle, sortMethod=xbmcplugin.SORT_METHOD_NONE) xbmcplugin.endOfDirectory(handle=pluginhandle, succeeded=True) if DEBUG: logger.info("Tiempo de ejecución = " + str(time.time() - t0))
def movielist(params, url, category): # pelis sin ficha (en listados por género) logger.info("[divxonline.py] movielist") # Descarga la página data = scrapertools.cachePage(url) #logger.info(data) data = stepinto(url, data, 'Ver página:(.*?)</p>') # Extrae las entradas (carpetas) patronvideos = '<li><h2><a href="([^"]+?)">(.*?)</a>' matches = re.compile(patronvideos, re.DOTALL).findall(data) #scrapertools.printMatches(matches) if (Generate): f = open(config.DATA_PATH + '/films.tab', 'w') # fichero para obtener las notas for match in matches: # Titulo scrapedtitle = remove_html_tags(match[1]) if (not Generate and Notas): score = anotador.getscore(remove_html_tags(match[1])) if (score != ""): scrapedtitle += " " + score # URL scrapedurl = urlparse.urljoin(url, match[0]) # url de la ficha divxonline scrapedurl = scrapedurl.replace( "pelicula", "pelicula-divx") # url de la página de reproducción # Thumbnail #scrapedthumbnail = urlparse.urljoin(url,match[1]) scrapedthumbnail = "" # procesa el resto scrapeddescription = "" # Depuracion if (DEBUG): logger.info("scrapedtitle=" + scrapedtitle) logger.info("scrapedurl=" + scrapedurl) logger.info("scrapedthumbnail=" + scrapedthumbnail) if (Generate): sanio = re.search('(.*?)\((.*?)\)', scrapedtitle) if (sanio): # si hay anio fareg = sanio.group(1) + "\t" + sanio.group( 2) + "\t" + scrapedtitle else: fareg = scrapedtitle + "\t\t" + scrapedtitle f.write(fareg + "\n") # Añade al listado de XBMC xbmctools.addthumbnailfolder(CHANNELNAME, scrapedtitle, scrapedurl, scrapedthumbnail, "listmirrors") # Label (top-right)... xbmcplugin.setPluginCategory(handle=pluginhandle, category=category) xbmcplugin.addSortMethod(handle=pluginhandle, sortMethod=xbmcplugin.SORT_METHOD_NONE) xbmcplugin.endOfDirectory(handle=pluginhandle, succeeded=True) if (Generate): f.close()
def movielist(params,url,category): logger.info("[descargacineclasico.py] mainlist") # Descarga la página data = scrapertools.cachePage(url) #logger.info(data) # Extrae las entradas (carpetas) patronvideos = "<h3>\n<a href='([^']+)'>(.*?)</a>" patronvideos += '.*?<a onblur=.*?src="(.*?)"' # cartel # patronvideos += ".*?SINOPSIS:(.*?)(PUBLICADO POR" # sinopsis matches = re.compile(patronvideos,re.DOTALL).findall(data) #scrapertools.printMatches(matches) if (Generate): f = open(config.DATA_PATH + '/films.tab', 'w') # fichero para obtener las notas for match in matches: # Titulo scrapedtitle = match[1] scrapedtitle = scrapedtitle.replace('¡','') # ¡ scrapedtitle = scrapedtitle.replace('¿','') # ¿ logger.info(scrapedtitle) # if (not Generate): # score = anotador.getscore(match[1]) # if (score != ""): # scrapedtitle += " " + score # URL scrapedurl = urlparse.urljoin(url,match[0]) # url de la ficha descargacineclasico # Thumbnail # scrapedthumbnail = urlparse.urljoin(url,match[2]) scrapedthumbnail = "" if LoadThumbnails: scrapedthumbnail = match[2].replace("s200","s1600") # procesa el resto # scrapeddescription = match[3] scrapeddescription = "" # Depuracion if (DEBUG): logger.info("scrapedtitle="+scrapedtitle) logger.info("scrapedurl="+scrapedurl) logger.info("scrapedthumbnail="+scrapedthumbnail) if (Generate): sanio = re.search('(.*?)\((.*?)\)',scrapedtitle) if (sanio): # si hay anio fareg = sanio.group(1) + "\t" + sanio.group(2) + "\t" + scrapedtitle else: fareg = scrapedtitle + "\t\t" + scrapedtitle f.write(fareg+"\n") # Añade al listado de XBMC xbmctools.addthumbnailfolder( CHANNELNAME , scrapedtitle , scrapedurl , scrapedthumbnail, "detail" ) # Label (top-right)... xbmcplugin.setPluginCategory( handle=pluginhandle, category=category ) # Disable sorting... xbmcplugin.addSortMethod( handle=pluginhandle, sortMethod=xbmcplugin.SORT_METHOD_NONE ) # End of directory... xbmcplugin.endOfDirectory( handle=pluginhandle, succeeded=True ) if (Generate): f.close()