diff --git a/plugin.video.alfa/addon.xml b/plugin.video.alfa/addon.xml index 1b3c28c5..f044ecc0 100755 --- a/plugin.video.alfa/addon.xml +++ b/plugin.video.alfa/addon.xml @@ -1,5 +1,5 @@  - + @@ -19,16 +19,15 @@ [B]Estos son los cambios para esta versión:[/B] [COLOR green][B]Canales agregados y arreglos[/B][/COLOR] - [I]- peliculasrey - - pelis24 - - peliscity - - peliscon - - pelisgratis - - pelispad - - pelismagnet - - rapidvideo - - streammango - - fix internos[/I] + » anitoonstv » qserie + » cartoonlatino » repelis + » seriesblanco » seodiv + » serieslan » pelisplanet + » seriesmeme » pepecine + » peliscity » pelisporno + » okru » vimpleru + ¤ fix internos + [COLOR green]Gracias a [COLOR yellow]danielr460[/COLOR] por su colaboración en esta versión[/COLOR] Navega con Kodi por páginas web para ver sus videos de manera fácil. Browse web pages using Kodi diff --git a/plugin.video.alfa/channels/anitoonstv.py b/plugin.video.alfa/channels/anitoonstv.py index f1a8c28f..3557a7f8 100644 --- a/plugin.video.alfa/channels/anitoonstv.py +++ b/plugin.video.alfa/channels/anitoonstv.py @@ -1,4 +1,4 @@ -# -*- coding: utf-8 -*- +# -*- coding: utf-8 -*- import re @@ -10,6 +10,17 @@ from core import servertools from core import tmdb from core.item import Item from platformcode import config, logger +from channels import autoplay + +IDIOMAS = {'latino': 'Latino'} +list_language = IDIOMAS.values() +list_servers = ['openload', + 'okru', + 'netutv', + 'rapidvideo' + ] +list_quality = ['default'] + host = "http://www.anitoonstv.com" @@ -17,6 +28,7 @@ host = "http://www.anitoonstv.com" def mainlist(item): logger.info() thumb_series = get_thumb("channels_tvshow.png") + autoplay.init(item.channel, list_servers, list_quality) itemlist = list() @@ -29,6 +41,7 @@ def mainlist(item): itemlist.append(Item(channel=item.channel, action="lista", title="Pokemon", url=host, thumbnail=thumb_series)) itemlist = renumbertools.show_option(item.channel, itemlist) + autoplay.show_option(item.channel, itemlist) return itemlist @@ -73,10 +86,10 @@ def lista(item): if "&" in show: cad = title.split("xy") show = cad[0] - + context1=[renumbertools.context(item), autoplay.context] itemlist.append( item.clone(title=title, url=url, plot=show, action="episodios", show=show, - context=renumbertools.context(item))) + context=context1)) tmdb.set_infoLabels(itemlist) return itemlist @@ -144,6 +157,8 @@ def findvideos(item): itemlist.append(item.clone(url=url, action="play", server=server, contentQuality=quality, thumbnail=scrapedthumbnail, plot=scrapedplot, title="Enlace encontrado en %s: [%s]" % (server.capitalize(), quality))) + + autoplay.start(itemlist, item) return itemlist diff --git a/plugin.video.alfa/channels/autoplay.py b/plugin.video.alfa/channels/autoplay.py index c99e0d77..66d451d4 100644 --- a/plugin.video.alfa/channels/autoplay.py +++ b/plugin.video.alfa/channels/autoplay.py @@ -277,11 +277,11 @@ def start(itemlist, item): platformtools.dialog_notification("AutoPlay", "Nueva Calidad/Servidor disponible en la " "configuracion", sound=False) - # Restaura si es necesario el valor previo de "Accion y Player Mode" en preferencias - if user_config_setting_action != 2: - config.set_setting("default_action", user_config_setting_action) - if user_config_setting_player != 0: - config.set_setting("player_mode", user_config_setting_player) + # Restaura si es necesario el valor previo de "Accion y Player Mode" en preferencias + if user_config_setting_action != 2: + config.set_setting("default_action", user_config_setting_action) + if user_config_setting_player != 0: + config.set_setting("player_mode", user_config_setting_player) # devuelve la lista de enlaces para la eleccion manual return itemlist diff --git a/plugin.video.alfa/channels/cartoonlatino.py b/plugin.video.alfa/channels/cartoonlatino.py index 702d860d..1cc9d289 100644 --- a/plugin.video.alfa/channels/cartoonlatino.py +++ b/plugin.video.alfa/channels/cartoonlatino.py @@ -12,18 +12,29 @@ from core.item import Item from platformcode import config, logger host = "http://www.cartoon-latino.com/" +from channels import autoplay +IDIOMAS = {'latino': 'Latino'} +list_language = IDIOMAS.values() +list_servers = ['openload', + 'vimple', + 'gvideo', + 'rapidvideo' + ] +list_quality = ['default'] def mainlist(item): logger.info() thumb_series = get_thumb("channels_tvshow.png") + autoplay.init(item.channel, list_servers, list_quality) itemlist = list() itemlist.append(Item(channel=item.channel, action="lista", title="Series", url=host, thumbnail=thumb_series)) itemlist = renumbertools.show_option(item.channel, itemlist) + autoplay.show_option(item.channel, itemlist) return itemlist @@ -87,9 +98,10 @@ def lista(item): for link, name in matches: title = name + " [Latino]" url = link + context1=[renumbertools.context(item), autoplay.context] itemlist.append( item.clone(title=title, url=url, plot=title, action="episodios", show=title, - context=renumbertools.context(item))) + context=context1)) tmdb.set_infoLabels(itemlist) return itemlist @@ -171,11 +183,13 @@ def findvideos(item): if server in link: url = link.replace('" + ID' + server + ' + "', str(id)) if "drive" in server: - server1 = 'googlevideo' + server1 = 'Gvideo' else: server1 = server itemlist.append(item.clone(url=url, action="play", server=server1, title="Enlace encontrado en %s " % (server1.capitalize()))) + + autoplay.start(itemlist, item) return itemlist diff --git a/plugin.video.alfa/channels/peliscity.py b/plugin.video.alfa/channels/peliscity.py index dcc1a1c3..daa198c0 100755 --- a/plugin.video.alfa/channels/peliscity.py +++ b/plugin.video.alfa/channels/peliscity.py @@ -1,4 +1,4 @@ -# -*- coding: utf-8 -*- +# -*- coding: utf-8 -*- import re import urlparse @@ -136,33 +136,26 @@ def findvideos(item): # Descarga la pagina data = scrapertools.cache_page(item.url) - patron = 'class="optxt">(.*?)<.*?width.*?class="q">(.*?)", "", data) # logger.info(data) - patron = '') title = "%s [COLOR yellow][%s][/COLOR]" % (scrapedtitle.strip(), calidad.upper()) - itemlist.append(Item(channel=item.channel, action="findvideos", title=title, plot='', + new_item = Item(channel=item.channel, action="findvideos", title=title, plot='', contentType='movie', url=scrapedurl, contentQuality=calidad, thumbnail=scrapedthumbnail, contentTitle=contentTitle, infoLabels={"year": year, 'rating': rating, 'director': director}, - text_color=color3)) + text_color=color3) - tmdb.set_infoLabels(itemlist, __modo_grafico__) - tmdb.set_infoLabels(itemlist, __modo_grafico__) + # tmdb.set_infoLabels(itemlist, __modo_grafico__) + # tmdb.set_infoLabels(itemlist, __modo_grafico__) + if year: + tmdb.set_infoLabels_item(new_item, __modo_grafico__) + itemlist.append(new_item) paginacion = scrapertools.find_single_match(data, '') title = "[COLOR green]%s[/COLOR] [COLOR yellow][%s][/COLOR] [COLOR yellow][%s][/COLOR]" % ( @@ -309,14 +319,9 @@ def findvideos(item): thumbnail = item.thumbnail server = servertools.get_server_from_url(url) - itemlist.append(item.clone(action='play', title=title, url=url, quality=quality, + itemlist.append(item.clone(action='play', title=title, url=url, quality=quality, language=lang.replace('Español ', ''), server=server, text_color=color3, thumbnail=thumbnail)) - for videoitem in itemlist: - videoitem.infoLabels = item.infoLabels - videoitem.channel = item.channel - videoitem.action = 'play' - videoitem.fulltitle = item.title if config.get_videolibrary_support() and len(itemlist) > 0: itemlist.append(Item(channel=item.channel, diff --git a/plugin.video.alfa/channels/pelisxporno.py b/plugin.video.alfa/channels/pelisxporno.py index 4175585c..c7065bb8 100755 --- a/plugin.video.alfa/channels/pelisxporno.py +++ b/plugin.video.alfa/channels/pelisxporno.py @@ -28,18 +28,14 @@ def lista(item): # Descarga la pagina data = httptools.downloadpage(item.url).data - # Extrae las entradas (carpetas) - patron = '
.*?href="([^"]+)".*?.*?>([^<]+)' \ - '.*?

(.*?)

' + patron = '
.*?.*?duration.*?>(.*?)<' matches = scrapertools.find_multiple_matches(data, patron) - for scrapedurl, scrapedthumbnail, duration, scrapedtitle, plot in matches: + for scrapedurl, scrapedtitle, scrapedthumbnail, duration in matches: if duration: scrapedtitle += " (%s)" % duration - itemlist.append(item.clone(action="findvideos", title=scrapedtitle, url=scrapedurl, thumbnail=scrapedthumbnail, - infoLabels={'plot': plot})) + itemlist.append(item.clone(action="findvideos", title=scrapedtitle, url=scrapedurl, thumbnail=scrapedthumbnail)) # Extrae la marca de siguiente página next_page = scrapertools.find_single_match(data, '
  • (.*?)<' matches = scrapertools.find_multiple_matches(data, patron) - for scrapedurl, scrapedthumbnail, scrapedtitle, cantidad in matches: - if cantidad: - scrapedtitle += " (%s vídeos)" % cantidad - itemlist.append(item.clone(action="lista", title=scrapedtitle, url=scrapedurl, thumbnail=scrapedthumbnail)) + for scrapedurl, scrapedtitle in matches: + itemlist.append(item.clone(action="lista", title=scrapedtitle, url=scrapedurl)) return itemlist diff --git a/plugin.video.alfa/channels/pepecine.py b/plugin.video.alfa/channels/pepecine.py index fc96c93d..304c15c7 100755 --- a/plugin.video.alfa/channels/pepecine.py +++ b/plugin.video.alfa/channels/pepecine.py @@ -355,8 +355,6 @@ def findvideos(item): except: return itemlist # Devolvemos lista vacia - lista_servers = servertools.get_servers_list() - for link in data_dict["link"]: if item.contentType == 'episode' \ and (item.contentSeason != link['season'] or item.contentEpisodeNumber != link['episode']): @@ -367,17 +365,17 @@ def findvideos(item): flag = scrapertools.find_single_match(link["label"], '(\s*\)') idioma = link["label"].replace(flag, "") if link["quality"] != "?": - calidad = (' [' + link["quality"] + ']') + calidad = (link["quality"]) else: calidad = "" - video = find_videos(link["url"], lista_servers) + itemlist.extend(servertools.find_video_items(data=url)) - if video["servidor"] != "": - servidor = video["servidor"] - url = video["url"] - title = "Ver en " + servidor.capitalize() + calidad + ' (' + idioma + ')' - itemlist.append(item.clone(action="play", viewmode="list", server=servidor, title=title, - text_color="0xFF994D00", url=url, folder=False)) + for videoitem in itemlist: + videoitem.channel = item.channel + videoitem.quality = calidad + videoitem.language = idioma + videoitem.contentTitle = item.title + itemlist = servertools.get_servers_itemlist(itemlist) if config.get_videolibrary_support() and itemlist and item.contentType == "movie": infoLabels = {'tmdb_id': item.infoLabels['tmdb_id'], @@ -390,40 +388,6 @@ def findvideos(item): return itemlist -def find_videos(url, lista_servers): - # logger.info() - ret = {'titulo': "", - 'url': "", - 'servidor': ""} - - # Ejecuta el find_videos en cada servidor hasta que encuentra una coicidencia - for serverid in lista_servers: - try: - servers_module = __import__("servers." + serverid) - server_module = getattr(servers_module, serverid) - devuelve = server_module.find_videos(url) - - if devuelve: - ret["titulo"] = devuelve[0][0] - ret["url"] = devuelve[0][1] - ret["servidor"] = devuelve[0][2] - # reordenar el listado, es probable q el proximo enlace sea del mismo servidor - lista_servers.remove(serverid) - lista_servers.insert(0, serverid) - break - - except ImportError: - logger.error("No existe conector para #" + serverid + "#") - # import traceback - # logger.info(traceback.format_exc()) - except: - logger.error("Error en el conector #" + serverid + "#") - import traceback - logger.error(traceback.format_exc()) - - return ret - - def episodios(item): # Necesario para las actualizaciones automaticas return get_temporadas(Item(channel=__chanel__, url=item.url, show=item.show, extra="serie_add")) diff --git a/plugin.video.alfa/channels/qserie.py b/plugin.video.alfa/channels/qserie.py index d30d6868..1dae555b 100755 --- a/plugin.video.alfa/channels/qserie.py +++ b/plugin.video.alfa/channels/qserie.py @@ -60,18 +60,15 @@ def todas(item): idioma = scrapertools.decodeHtmlentities(idioma) url = urlparse.urljoin(item.url, scrapedurl) year = scrapedyear - if idioma in audio: - idioma = audio[idioma] - else: - idioma = audio['Sub Español'] - title = scrapertools.decodeHtmlentities(scrapedtitle) + ' (' + idioma + ')' + title = scrapertools.decodeHtmlentities(scrapedtitle) thumbnail = scrapedthumbnail plot = scrapedplot fanart = 'https://s31.postimg.org/dousrbu9n/qserie.png' itemlist.append( Item(channel=item.channel, action="temporadas", title=title, url=url, thumbnail=thumbnail, plot=plot, - fanart=fanart, extra=idioma, contentSerieName=scrapedtitle, infoLabels={'year': year})) + fanart=fanart, extra=idioma, contentSerieName=scrapedtitle, infoLabels={'year': year}, + language=idioma)) tmdb.set_infoLabels_itemlist(itemlist, seekTmdb=True) # Paginacion siguiente = '' diff --git a/plugin.video.alfa/channels/repelis.py b/plugin.video.alfa/channels/repelis.py old mode 100755 new mode 100644 index 67bc251a..a80b4fec --- a/plugin.video.alfa/channels/repelis.py +++ b/plugin.video.alfa/channels/repelis.py @@ -5,6 +5,8 @@ import urlparse from core import scrapertools from core import servertools +from core import httptools +from core import tmdb from core.item import Item from platformcode import config, logger @@ -19,130 +21,107 @@ def mainlist(item): mifan = "http://www.psicocine.com/wp-content/uploads/2013/08/Bad_Robot_Logo.jpg" itemlist.append(Item(channel=item.channel, action="menupelis", title="Peliculas", url="http://www.repelis.tv/pag/1", - thumbnail="http://www.gaceta.es/sites/default/files/styles/668x300/public/metro_goldwyn_mayer_1926-web.png?itok=-lRSR9ZC", + thumbnail="http://www.gaceta.es/sites/default/files/styles/668x300/public" + "/metro_goldwyn_mayer_1926-web.png?itok=-lRSR9ZC", fanart=mifan)) itemlist.append(Item(channel=item.channel, action="menuestre", title="Estrenos", url="http://www.repelis.tv/archivos/estrenos/pag/1", - thumbnail="http://t0.gstatic.com/images?q=tbn:ANd9GcS4g68rmeLQFuX7iCrPwd00FI_OlINZXCYXEFrJHTZ0VSHefIIbaw", + thumbnail="http://t0.gstatic.com/images?q=tbn" + ":ANd9GcS4g68rmeLQFuX7iCrPwd00FI_OlINZXCYXEFrJHTZ0VSHefIIbaw", fanart=mifan)) itemlist.append( - Item(channel=item.channel, action="menudesta", title="Destacadas", url="http://www.repelis.tv/pag/1", - thumbnail="http://img.irtve.es/v/1074982/", fanart=mifan)) - itemlist.append(Item(channel=item.channel, action="todaspelis", title="Proximos estrenos", + Item(channel=item.channel, action="menudesta", title="Destacadas", url="http://www.repelis.tv/pag/1", + thumbnail="http://img.irtve.es/v/1074982/", fanart=mifan)) + itemlist.append(Item(channel=item.channel, action="menupelis", title="Proximos estrenos", url="http://www.repelis.tv/archivos/proximos-estrenos/pag/1", - thumbnail="https://encrypted-tbn3.gstatic.com/images?q=tbn:ANd9GcTpsRC-GTYzCqhor2gIDfAB61XeymwgXWSVBHoRAKs2c5HAn29f&reload=on", + thumbnail="https://encrypted-tbn3.gstatic.com/images?q=tbn:ANd9GcTpsRC" + "-GTYzCqhor2gIDfAB61XeymwgXWSVBHoRAKs2c5HAn29f&reload=on", fanart=mifan)) - itemlist.append( - Item(channel=item.channel, action="todaspelis", title="Todas las Peliculas", url="http://www.repelis.tv/pag/1", - thumbnail="https://freaksociety.files.wordpress.com/2012/02/logos-cine.jpg", fanart=mifan)) + itemlist.append(Item(channel=item.channel, action="menupelis", title="Todas las Peliculas", + url="http://www.repelis.tv/pag/1", + thumbnail="https://freaksociety.files.wordpress.com/2012/02/logos-cine.jpg", fanart=mifan)) if config.get_setting("adult_mode") != 0: - itemlist.append(Item(channel=item.channel, action="todaspelis", title="Eroticas +18", + itemlist.append(Item(channel=item.channel, action="menupelis", title="Eroticas +18", url="http://www.repelis.tv/genero/eroticas/pag/1", thumbnail="http://www.topkamisetas.com/catalogo/images/TB0005.gif", - fanart="http://www.topkamisetas.com/catalogo/images/TB0005.gif")) - # Quito la busqueda por año si no esta enabled el adultmode, porque no hay manera de filtrar los enlaces eroticos72 + fanart="http://www.topkamisetas.com/catalogo/images/TB0005.gif", extra='adult')) + # Quito la busqueda por año si no esta enabled el adultmode, porque no hay manera de filtrar los enlaces + # eroticos72 itemlist.append( - Item(channel=item.channel, action="poranyo", title="Por Año", url="http://www.repelis.tv/anio/2016", - thumbnail="http://t3.gstatic.com/images?q=tbn:ANd9GcSkxiYXdBcI0cvBLsb_nNlz_dWXHRl2Q-ER9dPnP1gNUudhrqlR", - fanart=mifan)) + Item(channel=item.channel, action="poranyo", title="Por Año", url="http://www.repelis.tv/anio/2016", + thumbnail="http://t3.gstatic.com/images?q=tbn:ANd9GcSkxiYXdBcI0cvBLsb_nNlz_dWXHRl2Q" + "-ER9dPnP1gNUudhrqlR", + fanart=mifan)) # Por categoria si que filtra la categoria de eroticos itemlist.append(Item(channel=item.channel, action="porcateg", title="Por Categoria", url="http://www.repelis.tv/genero/accion/pag/1", - thumbnail="http://www.logopro.it/blog/wp-content/uploads/2013/07/categoria-sigaretta-elettronica.png", + thumbnail="http://www.logopro.it/blog/wp-content/uploads/2013/07/categoria-sigaretta" + "-elettronica.png", fanart=mifan)) itemlist.append( - Item(channel=item.channel, action="search", title="Buscar...", url="http://www.repelis.tv/search/?s=", - thumbnail="http://thumbs.dreamstime.com/x/buscar-pistas-13159747.jpg", fanart=mifan)) + Item(channel=item.channel, action="search", title="Buscar...", url="http://www.repelis.tv/search/?s=", + thumbnail="http://thumbs.dreamstime.com/x/buscar-pistas-13159747.jpg", fanart=mifan)) return itemlist -# Peliculas recien agregadas ( quitamos las de estreno del slide-bar en el top + def menupelis(item): logger.info(item.url) itemlist = [] - data = scrapertools.cache_page(item.url).decode('iso-8859-1').encode('utf-8') + data = httptools.downloadpage(item.url).data.decode('iso-8859-1').encode('utf-8') + + if item.extra == '': + section = 'Recién Agregadas' + elif item.extra == 'year': + section = 'del Año \d{4}' + elif item.extra == 'adult': + section = 'de Eróticas \+18' + else: + section = 'de %s'%item.extra + + patronenlaces = 'Películas %s<\/h.>.*?>(.*?)<\/section>'%section + - patronenlaces = '

    Películas Recién Agregadas

    .*?>(.*?)' matchesenlaces = re.compile(patronenlaces, re.DOTALL).findall(data) - logger.info("begin ----------") - scrapertools.printMatches(matchesenlaces) - logger.info("end ----------") - for bloque_enlaces in matchesenlaces: patron = '
    .*?' - patron += 'Calidad (.*?)<') + year = scrapertools.find_single_match(extra_info, '"anio">(\d{4})<') + language = scrapertools.find_multiple_matches(extra_info, 'class="(latino|espanol|subtitulado)"') + # if language = 'ingles': + # language='vo' + new_item=Item(channel=item.channel, action="findvideos", title=title, fulltitle=title, url=url, + thumbnail=thumbnail, fanart=thumbnail, language=language, quality=quality, + infoLabels={'year': year}) + if year: + tmdb.set_infoLabels_item(new_item) - ## Paginación - # 2> Página siguiente" try: next_page = scrapertools.get_match(data, '\d+2> Página siguiente" - try: - next_page = scrapertools.get_match(data, '\d+Calidad (.*?)<') + year = scrapertools.find_single_match(extra_info, '"anio">(\d{4})<') + language = scrapertools.find_single_match(extra_info, 'class="(latino|espanol|subtitulado)"') + itemlist.append(Item(channel=item.channel, action="findvideos", title=title, fulltitle=title, url=url, - thumbnail=thumbnail, fanart=thumbnail)) + thumbnail=thumbnail, fanart=thumbnail, language=language, quality=quality, + infoLabels={'year': year})) ## Paginación # 2Sinopsis

    (.*?)

    -
    -

    Titulo en Español

    -

    Abzurdah

    -

    Titulo Original

    -

    Abzurdah

    -

    Año de Lanzamiento

    -

    2015

    -

    Generos

    -

    Romance

    -

    Idioma

    -

    Latino

    -

    Calidad

    -

    DVD-Rip

    - ''' - - # estos son los datos para plot patron = '

    Sinopsis

    .*?

    (.*?)

    .*?
    .*?

    (.*?)

    ' # titulo matches = re.compile(patron, re.DOTALL).findall(data) - scrapertools.printMatches(matches) for sinopsis, title in matches: title = "[COLOR white][B]" + title + "[/B][/COLOR]" patron = '
    (.*?)
    ' matches = re.compile(patron, re.DOTALL).findall(data) - scrapertools.printMatches(matches) for scrapedplot in matches: splot = title + "\n\n" plot = scrapedplot @@ -273,37 +236,45 @@ def findvideos(item): patron = '(.*?)' matchesx = re.compile(patron, re.DOTALL).findall(data) - scrapertools.printMatches(matchesx) for bloq in matchesx: patron = 'href="(.*?)".*?0 0">(.*?)(.*?)(.*?)<' matches = re.compile(patron, re.DOTALL).findall(bloq) - # scrapertools.printMatches(matches) for scrapedurl, scrapedserver, scrapedlang, scrapedquality in matches: url = urlparse.urljoin(item.url, scrapedurl) logger.info("Lang:[" + scrapedlang + "] Quality[" + scrapedquality + "] URL[" + url + "]") patronenlaces = '.*?://(.*?)/' matchesenlaces = re.compile(patronenlaces, re.DOTALL).findall(scrapedurl) - scrapertools.printMatches(matchesenlaces) scrapedtitle = "" + if scrapedserver == 'Vimple': + scrapedserver = 'vimpleru' + elif scrapedserver == 'Ok.ru': + scrapedserver = 'okru' + server = servertools.get_server_name(scrapedserver) for scrapedenlace in matchesenlaces: scrapedtitle = title + " [COLOR white][ [/COLOR]" + "[COLOR green]" + scrapedquality + "[/COLOR]" + "[COLOR white] ][/COLOR]" + " [COLOR red] [" + scrapedlang + "][/COLOR] » " + scrapedserver - itemlist.append( - Item(channel=item.channel, action="play", title=scrapedtitle, extra=title, url=url, fanart=item.thumbnail, - thumbnail=item.thumbnail, plot=splot, folder=False)) + + itemlist.append(Item(channel=item.channel, action="play", title=scrapedtitle, extra=title, url=url, + fanart=item.thumbnail, thumbnail=item.thumbnail, plot=splot, language=scrapedlang, + quality=scrapedquality, server=server)) return itemlist def play(item): - logger.info("url=" + item.url) + logger.info() + itemlist =[] - # itemlist = servertools.find_video_items(data=item.url) + data = httptools.downloadpage(item.url).data - url = scrapertools.find_single_match(scrapertools.cache_page(item.url), '