Merge remote-tracking branch 'alfa-addon/master' into Fixes
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<addon id="plugin.video.alfa" name="Alfa" version="2.3.6" provider-name="Alfa Addon">
|
||||
<addon id="plugin.video.alfa" name="Alfa" version="2.3.7" provider-name="Alfa Addon">
|
||||
<requires>
|
||||
<import addon="xbmc.python" version="2.1.0"/>
|
||||
<import addon="script.module.libtorrent" optional="true"/>
|
||||
@@ -19,8 +19,14 @@
|
||||
</assets>
|
||||
<news>[B]Estos son los cambios para esta versión:[/B]
|
||||
[COLOR green][B]Canales agregados y arreglos[/B][/COLOR]
|
||||
» seriesblanco » hdfull
|
||||
» gamovideo ¤ arreglos internos
|
||||
» anitoonstv » asialiveaction
|
||||
» cinehindi » danimados
|
||||
» mundiseries » pelisculashndu
|
||||
» seodiv » serieslan
|
||||
» crunchyroll » pelisfox
|
||||
» stormo ¤ arreglos internos
|
||||
[COLOR green]Gracias a [COLOR yellow]Danielr460, numa00009 y numa00009[/COLOR]
|
||||
por su colaboración en esta versión[/COLOR]
|
||||
</news>
|
||||
<description lang="es">Navega con Kodi por páginas web para ver sus videos de manera fácil.</description>
|
||||
<summary lang="en">Browse web pages using Kodi</summary>
|
||||
|
||||
@@ -127,7 +127,7 @@ def episodios(item):
|
||||
plot=scrapedplot, url=url, show=show))
|
||||
|
||||
if config.get_videolibrary_support() and len(itemlist) > 0:
|
||||
itemlist.append(Item(channel=item.channel, title="Añadir esta serie a la videoteca", url=item.url,
|
||||
itemlist.append(Item(channel=item.channel, title="[COLOR yellow]Añadir esta serie a la videoteca[/COLOR]", url=item.url,
|
||||
action="add_serie_to_library", extra="episodios", show=show))
|
||||
|
||||
return itemlist
|
||||
|
||||
@@ -180,7 +180,7 @@ def findvideos(item):
|
||||
show = item.show
|
||||
for videoitem in itemlist:
|
||||
videoitem.channel = item.channel
|
||||
if config.get_videolibrary_support() and len(itemlist) > 0 and item.contentType=="movie":
|
||||
if config.get_videolibrary_support() and len(itemlist) > 0 and item.contentType=="movie" and item.contentChannel!='videolibrary':
|
||||
itemlist.append(
|
||||
Item(channel=item.channel, title='[COLOR yellow]Añadir esta pelicula a la videoteca[/COLOR]', url=item.url,
|
||||
action="add_pelicula_to_library", extra="findvideos", contentTitle=show))
|
||||
|
||||
@@ -150,7 +150,7 @@ def episodios(item):
|
||||
itemlist.append(Item(channel=item.channel, action="findvideos", title=title, url=url, show=show))
|
||||
|
||||
if config.get_videolibrary_support() and len(itemlist) > 0:
|
||||
itemlist.append(Item(channel=item.channel, title="Añadir " + show + " a la videoteca", url=item.url,
|
||||
itemlist.append(Item(channel=item.channel, title="[COLOR yellow]Añadir " + show + " a la videoteca[/COLOR]", url=item.url,
|
||||
action="add_serie_to_library", extra="episodios", show=show))
|
||||
|
||||
return itemlist
|
||||
|
||||
@@ -123,7 +123,7 @@ def lista(item):
|
||||
|
||||
if next_page_url != "":
|
||||
item.url = next_page_url
|
||||
itemlist.append(Item(channel=item.channel, action="lista", title=">> Página siguiente", url=next_page_url,
|
||||
itemlist.append(Item(channel=item.channel, action="lista", title="[COLOR cyan]Página Siguiente >>[/COLOR]", url=next_page_url,
|
||||
thumbnail='https://s32.postimg.org/4zppxf5j9/siguiente.png'))
|
||||
return itemlist
|
||||
|
||||
@@ -132,14 +132,18 @@ def findvideos(item):
|
||||
logger.info()
|
||||
|
||||
itemlist = []
|
||||
itemlist1 = []
|
||||
|
||||
data = httptools.downloadpage(item.url).data
|
||||
itemlist.extend(servertools.find_video_items(data=data))
|
||||
itemlist1.extend(servertools.find_video_items(data=data))
|
||||
patron_show = '<div class="data"><h1 itemprop="name">([^<]+)<\/h1>'
|
||||
show = scrapertools.find_single_match(data, patron_show)
|
||||
for videoitem in itemlist:
|
||||
for videoitem in itemlist1:
|
||||
videoitem.channel = item.channel
|
||||
if config.get_videolibrary_support() and len(itemlist) > 0:
|
||||
for i in range(len(itemlist1)):
|
||||
if not 'youtube' in itemlist1[i].title:
|
||||
itemlist.append(itemlist1[i])
|
||||
if config.get_videolibrary_support() and len(itemlist) > 0 and item.contentChannel!='videolibrary':
|
||||
itemlist.append(
|
||||
Item(channel=item.channel, title='[COLOR yellow]Añadir esta pelicula a la videoteca[/COLOR]', url=item.url,
|
||||
action="add_pelicula_to_library", extra="findvideos", contentTitle=show))
|
||||
|
||||
@@ -168,11 +168,11 @@ def episodios(item):
|
||||
|
||||
data = httptools.downloadpage(item.url).data
|
||||
data = re.sub(r'\n|\t|\s{2,}', '', data)
|
||||
patron = '<li id="showview_videos.*?href="([^"]+)".*?(?:src|data-thumbnailUrl)="([^"]+)".*?media_id="([^"]+)" ' \
|
||||
'style="width: (.*?)%.*?<span class="series-title.*?>\s*(.*?)</span>.*?<p class="short-desc".*?>' \
|
||||
patron = '<li id="showview_videos.*?href="([^"]+)".*?(?:src|data-thumbnailUrl)="([^"]+)".*?media_id="([^"]+)"' \
|
||||
'style="width:(.*?)%.*?<span class="series-title.*?>\s*(.*?)</span>.*?<p class="short-desc".*?>' \
|
||||
'\s*(.*?)</p>.*?description":"([^"]+)"'
|
||||
if data.count('class="season-dropdown') > 1:
|
||||
bloques = scrapertools.find_multiple_matches(data, 'class="season-dropdown[^"]+" title="([^"]+)"(.*?)</ul>')
|
||||
bloques = scrapertools.find_multiple_matches(data, 'class="season-dropdown[^"]+".*?title="([^"]+)"(.*?)</ul>')
|
||||
for season, b in bloques:
|
||||
matches = scrapertools.find_multiple_matches(b, patron)
|
||||
if matches:
|
||||
@@ -209,7 +209,6 @@ def episodios(item):
|
||||
Item(channel=item.channel, action="play", title=title, url=url, thumbnail=thumb, media_id=media_id,
|
||||
server="crunchyroll", text_color=item.text_color, contentTitle=item.contentTitle,
|
||||
contentSerieName=item.contentSerieName, contentType="tvshow"))
|
||||
|
||||
return itemlist
|
||||
|
||||
|
||||
|
||||
@@ -32,8 +32,8 @@ def mainlist(item):
|
||||
thumbnail=thumb_series))
|
||||
itemlist.append(Item(channel=item.channel, action="mainpage", title="Más Populares", url=host,
|
||||
thumbnail=thumb_series))
|
||||
#itemlist.append(Item(channel=item.channel, action="movies", title="Peliculas Animadas", url=host,
|
||||
# thumbnail=thumb_series))
|
||||
itemlist.append(Item(channel=item.channel, action="lista", title="Peliculas Animadas", url=host+"peliculas/",
|
||||
thumbnail=thumb_series))
|
||||
autoplay.show_option(item.channel, itemlist)
|
||||
return itemlist
|
||||
|
||||
@@ -82,7 +82,6 @@ def mainpage(item):
|
||||
return itemlist
|
||||
return itemlist
|
||||
|
||||
|
||||
def lista(item):
|
||||
logger.info()
|
||||
|
||||
@@ -90,15 +89,26 @@ def lista(item):
|
||||
|
||||
data = httptools.downloadpage(item.url).data
|
||||
data = re.sub(r"\n|\r|\t|\s{2}| ", "", data)
|
||||
data_lista = scrapertools.find_single_match(data, '<div class="items">(.+?)<\/div><\/div><div class=.+?>')
|
||||
if item.title=="Peliculas Animadas":
|
||||
data_lista = scrapertools.find_single_match(data,
|
||||
'<div id="archive-content" class="animation-2 items">(.*)<a href=\'')
|
||||
else:
|
||||
data_lista = scrapertools.find_single_match(data,
|
||||
'<div class="items">(.+?)<\/div><\/div><div class=.+?>')
|
||||
patron = '<img src="([^"]+)" alt="([^"]+)">.+?<a href="([^"]+)">.+?<div class="texto">(.+?)<\/div>'
|
||||
#scrapedthumbnail,#scrapedtitle, #scrapedurl, #scrapedplot
|
||||
matches = scrapertools.find_multiple_matches(data_lista, patron)
|
||||
for scrapedthumbnail,scrapedtitle, scrapedurl, scrapedplot in matches:
|
||||
itemlist.append(
|
||||
item.clone(title=scrapedtitle, url=scrapedurl, thumbnail=scrapedthumbnail,
|
||||
if item.title=="Peliculas Animadas":
|
||||
itemlist.append(
|
||||
item.clone(title=scrapedtitle, url=scrapedurl, thumbnail=scrapedthumbnail, contentType="movie",
|
||||
plot=scrapedplot, action="findvideos", show=scrapedtitle))
|
||||
else:
|
||||
itemlist.append(
|
||||
item.clone(title=scrapedtitle, url=scrapedurl, thumbnail=scrapedthumbnail,
|
||||
context=autoplay.context,plot=scrapedplot, action="episodios", show=scrapedtitle))
|
||||
tmdb.set_infoLabels(itemlist)
|
||||
if item.title!="Peliculas Animadas":
|
||||
tmdb.set_infoLabels(itemlist)
|
||||
return itemlist
|
||||
|
||||
|
||||
@@ -124,7 +134,7 @@ def episodios(item):
|
||||
action="findvideos", title=title, url=scrapedurl, show=show))
|
||||
|
||||
if config.get_videolibrary_support() and len(itemlist) > 0:
|
||||
itemlist.append(Item(channel=item.channel, title="[COLOR blue]Añadir " + show + " a la videoteca[/COLOR]", url=item.url,
|
||||
itemlist.append(Item(channel=item.channel, title="[COLOR yellow]Añadir " + show + " a la videoteca[/COLOR]", url=item.url,
|
||||
action="add_serie_to_library", extra="episodios", show=show))
|
||||
|
||||
|
||||
@@ -141,6 +151,7 @@ def findvideos(item):
|
||||
data = scrapertools.find_single_match(data,
|
||||
'<div id="playex" .+?>(.+?)<\/nav><\/div><\/div>')
|
||||
patron='src="(.+?)"'
|
||||
logger.info("assfxxv "+data)
|
||||
itemla = scrapertools.find_multiple_matches(data,patron)
|
||||
for i in range(len(itemla)):
|
||||
#for url in itemla:
|
||||
@@ -152,6 +163,8 @@ def findvideos(item):
|
||||
server='okru'
|
||||
else:
|
||||
server=''
|
||||
if "youtube" in url:
|
||||
server='youtube'
|
||||
if "openload" in url:
|
||||
server='openload'
|
||||
if "google" in url:
|
||||
@@ -166,6 +179,10 @@ def findvideos(item):
|
||||
title="NO DISPONIBLE"
|
||||
if title!="NO DISPONIBLE":
|
||||
itemlist.append(item.clone(title=title,url=url, action="play", server=server))
|
||||
if config.get_videolibrary_support() and len(itemlist) > 0 and item.contentType=="movie" and item.contentChannel!='videolibrary':
|
||||
itemlist.append(
|
||||
item.clone(channel=item.channel, title='[COLOR yellow]Añadir esta pelicula a la videoteca[/COLOR]', url=item.url,
|
||||
action="add_pelicula_to_library", contentTitle=item.show))
|
||||
|
||||
autoplay.start(itemlist, item)
|
||||
return itemlist
|
||||
|
||||
@@ -136,7 +136,7 @@ def faq(item):
|
||||
"Puedes intentar subsanar estos problemas en 'Configuración'>'Ajustes de "
|
||||
"la videoteca', cambiando el ajuste 'Realizar búsqueda de contenido en' "
|
||||
"de 'La carpeta de cada serie' a 'Toda la videoteca'."
|
||||
"También puedes acudir a 'http://alfa-addon.ga' en busca de ayuda.")
|
||||
"También puedes acudir a 'http://alfa-addon.com' en busca de ayuda.")
|
||||
|
||||
return TextBox("DialogTextViewer.xml", os.getcwd(), "Default", title=title, text=text)
|
||||
|
||||
@@ -145,7 +145,7 @@ def faq(item):
|
||||
text = ("Puede ser que la página web del canal no funcione. "
|
||||
"En caso de que funcione la página web puede que no seas el primero"
|
||||
" en haberlo visto y que el canal este arreglado. "
|
||||
"Puedes mirar en 'alfa-addon.ga' o en el "
|
||||
"Puedes mirar en 'alfa-addon.com' o en el "
|
||||
"repositorio de GitHub (github.com/alfa-addon/addon). "
|
||||
"Si no encuentras el canal arreglado puedes reportar un "
|
||||
"problema en el foro.")
|
||||
@@ -198,15 +198,20 @@ def faq(item):
|
||||
log_name = "kodi.log"
|
||||
ruta = xbmc.translatePath("special://logpath") + log_name
|
||||
title = "Alfa - FAQ - %s" % item.title[6:]
|
||||
text = ("Para reportar un problema en 'http://alfa-addon.ga' es necesario:\n"
|
||||
text = ("Para reportar un problema en 'http://alfa-addon.com' es necesario:\n"
|
||||
" - Versión que usas de Alfa.\n"
|
||||
" - Versión que usas de kodi, mediaserver, etc.\n"
|
||||
" - Versión y nombre del sistema operativo que usas.\n"
|
||||
" - Nombre del skin (en el caso que uses Kodi) y si se "
|
||||
"te ha resuelto el problema al usar el skin por defecto.\n"
|
||||
" - Descripción del problema y algún caso de prueba.\n"
|
||||
" - Agregar el log en modo detallado, una vez hecho esto, "
|
||||
"zipea el log y lo puedes adjuntar en un post.\n\n"
|
||||
"El log se encuentra en: \n\n"
|
||||
"Para activar el log en modo detallado, ingresar a:\n"
|
||||
" - Configuración.\n"
|
||||
" - Preferencias.\n"
|
||||
" - En la pestaña General - Marcar la opción: Generar log detallado.\n\n"
|
||||
"El archivo de log detallado se encuentra en la siguiente ruta: \n\n"
|
||||
"%s" % ruta)
|
||||
|
||||
return TextBox("DialogTextViewer.xml", os.getcwd(), "Default", title=title, text=text)
|
||||
@@ -214,6 +219,6 @@ def faq(item):
|
||||
else:
|
||||
platformtools.dialog_ok("Alfa",
|
||||
"Entérate de novedades, consejos u opciones que desconoces en Telegram: @alfa_addon.\n"
|
||||
"Si tienes problemas o dudas, puedes acudir al Foro: http://alfa-addon.ga")
|
||||
"Si tienes problemas o dudas, puedes acudir al Foro: http://alfa-addon.com")
|
||||
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -76,7 +76,7 @@ def episodios(item):
|
||||
title=title, url=url, show=show))
|
||||
|
||||
if config.get_videolibrary_support() and len(itemlist) > 0:
|
||||
itemlist.append(Item(channel=item.channel, title="Añadir Temporada/Serie a la biblioteca de Kodi", url=item.url,
|
||||
itemlist.append(Item(channel=item.channel, title="[COLOR yellow]Añadir Temporada/Serie a la biblioteca de Kodi[/COLOR]", url=item.url,
|
||||
action="add_serie_to_library", extra="episodios", show=show))
|
||||
return itemlist
|
||||
|
||||
|
||||
@@ -33,15 +33,14 @@ def mainlist(item):
|
||||
def explorar(item):
|
||||
logger.info()
|
||||
itemlist = list()
|
||||
url1 = str(item.url)
|
||||
url1 = item.title
|
||||
data = httptools.downloadpage(host).data
|
||||
data = re.sub(r"\n|\r|\t|\s{2}| ", "", data)
|
||||
# logger.info("loca :"+url1+" aaa"+data)
|
||||
if 'genero' in url1:
|
||||
patron = '<div class="d"><h3>Pel.+?neros<\/h3>(.+?)<\/h3>'
|
||||
if 'alfabetico' in url1:
|
||||
patron = '<\/li><\/ul><h3>Pel.+?tico<\/h3>(.+?)<\/h3>'
|
||||
if 'año' in url1:
|
||||
if 'Género' in url1:
|
||||
patron = '<div class="d">.+?<h3>Pel.+?neros<\/h3>(.+?)<\/h3>'
|
||||
if 'Listado Alfabético' in url1:
|
||||
patron = '<\/li><\/ul>.+?<h3>Pel.+?tico<\/h3>(.+?)<\/h3>'
|
||||
if 'Año' in url1:
|
||||
patron = '<ul class="anio"><li>(.+?)<\/ul>'
|
||||
data_explorar = scrapertools.find_single_match(data, patron)
|
||||
patron_explorar = '<a href="([^"]+)">([^"]+)<\/a>'
|
||||
@@ -79,26 +78,22 @@ def lista(item):
|
||||
|
||||
data = httptools.downloadpage(item.url).data
|
||||
data = re.sub(r"\n|\r|\t|\s{2}| ", "", data) # Eliminamos tabuladores, dobles espacios saltos de linea, etc...
|
||||
url1 = str(item.url)
|
||||
if 'http://www.peliculashindu.com/' in url1:
|
||||
url1 = url1.replace("http://www.peliculashindu.com/", "")
|
||||
if url1 != 'estrenos':
|
||||
data = scrapertools.find_single_match(data, '<div id="cuerpo"><div class="iz">.+>Otras')
|
||||
# data= scrapertools.find_single_match(data,'<div id="cuerpo"><div class="iz">.+>Otras')
|
||||
data_mov= scrapertools.find_single_match(data,'<div id="cuerpo"><div class="iz">(.+)<ul class="pag">')
|
||||
patron = '<a href="([^"]+)"><img src="([^"]+)" alt="([^"]+)"' # scrapedurl, scrapedthumbnail, scrapedtitle
|
||||
matches = scrapertools.find_multiple_matches(data, patron)
|
||||
matches = scrapertools.find_multiple_matches(data_mov, patron)
|
||||
for scrapedurl, scrapedthumbnail, scrapedtitle in matches: # scrapedthumbnail, scrapedtitle in matches:
|
||||
itemlist.append(item.clone(title=scrapedtitle, url=scrapedurl, thumbnail=scrapedthumbnail, action="findvideos",
|
||||
show=scrapedtitle))
|
||||
# Paginacion
|
||||
patron_pag = '<a href="([^"]+)" title="Siguiente .+?">'
|
||||
paginasig = scrapertools.find_single_match(data, patron_pag)
|
||||
logger.info("algoooosadf "+paginasig)
|
||||
|
||||
next_page_url = item.url + paginasig
|
||||
next_page_url = host + paginasig
|
||||
|
||||
if paginasig != "":
|
||||
item.url = next_page_url
|
||||
itemlist.append(Item(channel=item.channel, action="lista", title=">> Página siguiente", url=next_page_url,
|
||||
itemlist.append(Item(channel=item.channel, action="lista", title="[COLOR cyan]Página Siguiente >>[/COLOR]", url=next_page_url,
|
||||
thumbnail='https://s32.postimg.org/4zppxf5j9/siguiente.png'))
|
||||
return itemlist
|
||||
|
||||
@@ -114,10 +109,9 @@ def findvideos(item):
|
||||
logger.info("holaa" + data)
|
||||
patron_show = '<strong>Ver Pel.+?a([^<]+) online<\/strong>'
|
||||
show = scrapertools.find_single_match(data, patron_show)
|
||||
logger.info("holaa" + show)
|
||||
for videoitem in itemlist:
|
||||
videoitem.channel = item.channel
|
||||
if config.get_videolibrary_support() and len(itemlist) > 0:
|
||||
if config.get_videolibrary_support() and len(itemlist) > 0 and item.contentChannel!='videolibrary':
|
||||
itemlist.append(
|
||||
Item(channel=item.channel, title='[COLOR yellow]Añadir esta pelicula a la videoteca[/COLOR]', url=item.url,
|
||||
action="add_pelicula_to_library", extra="findvideos", contentTitle=show))
|
||||
|
||||
@@ -8,6 +8,7 @@ from core import httptools
|
||||
from core import scrapertools
|
||||
from core import servertools
|
||||
from core.item import Item
|
||||
from core import tmdb
|
||||
from platformcode import config, logger
|
||||
|
||||
IDIOMAS = {'latino': 'Latino'}
|
||||
@@ -35,6 +36,7 @@ def mainlist(item):
|
||||
url=host,
|
||||
thumbnail='https://s27.postimg.org/iahczwgrn/series.png',
|
||||
fanart='https://s27.postimg.org/iahczwgrn/series.png',
|
||||
page=0
|
||||
))
|
||||
autoplay.show_option(item.channel, itemlist)
|
||||
return itemlist
|
||||
@@ -49,15 +51,21 @@ def todas(item):
|
||||
'Serie><span>(.*?)<\/span>'
|
||||
|
||||
matches = re.compile(patron, re.DOTALL).findall(data)
|
||||
for scrapedurl, scrapedthumbnail, scrapedcalidad, scrapedtitle in matches:
|
||||
# Paginacion
|
||||
num_items_x_pagina = 30
|
||||
min = item.page * num_items_x_pagina
|
||||
min=int(min)-int(item.page)
|
||||
max = min + num_items_x_pagina - 1
|
||||
|
||||
for scrapedurl, scrapedthumbnail, scrapedcalidad, scrapedtitle in matches[min:max]:
|
||||
url = host + scrapedurl
|
||||
calidad = scrapedcalidad
|
||||
title = scrapedtitle.decode('utf-8')
|
||||
thumbnail = scrapedthumbnail
|
||||
fanart = 'https://s32.postimg.org/gh8lhbkb9/seodiv.png'
|
||||
|
||||
itemlist.append(
|
||||
Item(channel=item.channel,
|
||||
if not 'xxxxxx' in scrapedtitle:
|
||||
itemlist.append(
|
||||
Item(channel=item.channel,
|
||||
action="temporadas",
|
||||
title=title, url=url,
|
||||
thumbnail=thumbnail,
|
||||
@@ -67,7 +75,13 @@ def todas(item):
|
||||
language=language,
|
||||
context=autoplay.context
|
||||
))
|
||||
|
||||
tmdb.set_infoLabels(itemlist)
|
||||
if len(itemlist)>28:
|
||||
itemlist.append(
|
||||
Item(channel=item.channel,
|
||||
title="[COLOR cyan]Página Siguiente >>[/COLOR]",
|
||||
url=item.url, action="todas",
|
||||
page=item.page + 1))
|
||||
return itemlist
|
||||
|
||||
|
||||
@@ -222,16 +236,31 @@ def episodiosxtemp(item):
|
||||
def findvideos(item):
|
||||
logger.info()
|
||||
itemlist = []
|
||||
lang=[]
|
||||
data = httptools.downloadpage(item.url).data
|
||||
video_items = servertools.find_video_items(item)
|
||||
|
||||
data = re.sub(r'"|\n|\r|\t| |<br>|\s{2,}', "", data)
|
||||
language_items=scrapertools.find_single_match(data,
|
||||
'<ul class=tabs-sidebar-ul>(.+?)<\/ul>')
|
||||
matches=scrapertools.find_multiple_matches(language_items,
|
||||
'<li><a href=#ts(.+?)><span>(.+?)<\/span><\/a><\/li>')
|
||||
for idl,scrapedlang in matches:
|
||||
if int(idl)<5 and int(idl)!=1:
|
||||
lang.append(scrapedlang)
|
||||
i=0
|
||||
logger.info(lang)
|
||||
for videoitem in video_items:
|
||||
videoitem.thumbnail = servertools.guess_server_thumbnail(videoitem.server)
|
||||
videoitem.language = scrapertools.find_single_match(data, '<span class="f-info-title">Idioma:<\/span>\s*<span '
|
||||
'class="f-info-text">(.*?)<\/span>')
|
||||
#videoitem.language = scrapertools.find_single_match(data, '<span class="f-info-title">Idioma:<\/span>\s*<span '
|
||||
# 'class="f-info-text">(.*?)<\/span>')
|
||||
if len(lang)<=i:
|
||||
videoitem.language=lang[i]
|
||||
else:
|
||||
videoitem.language=lang[len(lang)-1]
|
||||
videoitem.title = item.contentSerieName + ' (' + videoitem.server + ') (' + videoitem.language + ')'
|
||||
videoitem.quality = 'default'
|
||||
videoitem.context = item.context
|
||||
i=i+1
|
||||
itemlist.append(videoitem)
|
||||
|
||||
# Requerido para FilterTools
|
||||
|
||||
@@ -78,10 +78,10 @@ def lista(item):
|
||||
url="https://serieslan.com/pag-"+str(a)
|
||||
if b>10:
|
||||
itemlist.append(
|
||||
Item(channel=item.channel, title="Página Siguiente >>", url=url, action="lista", page=0))
|
||||
Item(channel=item.channel, title="[COLOR cyan]Página Siguiente >>[/COLOR]", url=url, action="lista", page=0))
|
||||
else:
|
||||
itemlist.append(
|
||||
Item(channel=item.channel, title="Página Siguiente >>", url=item.url, action="lista", page=item.page + 1))
|
||||
Item(channel=item.channel, title="[COLOR cyan]Página Siguiente >>[/COLOR]", url=item.url, action="lista", page=item.page + 1))
|
||||
|
||||
tmdb.set_infoLabels(itemlist)
|
||||
return itemlist
|
||||
@@ -92,7 +92,6 @@ def episodios(item):
|
||||
|
||||
itemlist = []
|
||||
data = httptools.downloadpage(item.url).data
|
||||
logger.debug("info %s " % data)
|
||||
# obtener el numero total de episodios
|
||||
total_episode = 0
|
||||
|
||||
@@ -185,7 +184,6 @@ def findvideos(item):
|
||||
data = eval(data)
|
||||
|
||||
if type(data) == list:
|
||||
logger.debug("inside")
|
||||
video_url = url_server % (txc(ide, base64.decodestring(data[2])))
|
||||
server = "openload"
|
||||
if " SUB" in item.title:
|
||||
@@ -195,7 +193,11 @@ def findvideos(item):
|
||||
else:
|
||||
lang = "Latino"
|
||||
title = "Enlace encontrado en " + server + " [" + lang + "]"
|
||||
itemlist.append(Item(channel=item.channel, action="play", title=title, show=show, url=video_url, plot=item.plot,
|
||||
if item.contentChannel=='videolibrary':
|
||||
itemlist.append(item.clone(channel=item.channel, action="play", url=video_url,
|
||||
thumbnail=thumbnail, server=server, folder=False))
|
||||
else:
|
||||
itemlist.append(Item(channel=item.channel, action="play", title=title, show=show, url=video_url, plot=item.plot,
|
||||
thumbnail=thumbnail, server=server, folder=False))
|
||||
|
||||
autoplay.start(itemlist, item)
|
||||
|
||||
@@ -40,6 +40,7 @@
|
||||
</category>
|
||||
<category label="Opciones Visuales">
|
||||
<setting id="icon_set" type="labelenum" label="Set de iconos" values="default|dark" default="default"/>
|
||||
<setting id="infoplus_set" type="labelenum" label="Opción visual Infoplus" values="Sin animación|Con animación" default="Sin animación"/>
|
||||
</category>
|
||||
<category label="Otros">
|
||||
<setting label="Info de películas/series en menú contextual" type="lsep"/>
|
||||
|
||||
@@ -37,7 +37,7 @@ def get_video_url(page_url, premium=False, user="", password="", video_password=
|
||||
cgi_counter = cgi_counter.replace("%0A","").replace("%22","")
|
||||
playnow = scrapertools.find_single_match(data, 'https://www.flashx.tv/dl[^"]+')
|
||||
# Para obtener el f y el fxfx
|
||||
js_fxfx = "https://www." + scrapertools.find_single_match(data.replace("//","/"), """(?is)(flashx.tv/js/code.js.*?[^(?:'|")]+)""")
|
||||
js_fxfx = "https://www." + scrapertools.find_single_match(data.replace("//","/"), """(?is)(flashx.tv/jss/coder.js.*?[^(?:'|")]+)""")
|
||||
data_fxfx = httptools.downloadpage(js_fxfx).data
|
||||
mfxfx = scrapertools.find_single_match(data_fxfx, 'get.*?({.*?})').replace("'","").replace(" ","")
|
||||
matches = scrapertools.find_multiple_matches(mfxfx, '(\w+):(\w+)')
|
||||
|
||||
@@ -8,9 +8,11 @@ from platformcode import logger
|
||||
def test_video_exists(page_url):
|
||||
logger.info("(page_url='%s')" % page_url)
|
||||
|
||||
data = httptools.downloadpage(page_url).data
|
||||
if "video_error.mp4" in data:
|
||||
response = httptools.downloadpage(page_url)
|
||||
if "video_error.mp4" in response.data:
|
||||
return False, "[Stormo] El archivo no existe o ha sido borrado"
|
||||
if response.code == 451:
|
||||
return False, "[Stormo] El archivo ha sido borrado por problemas legales."
|
||||
|
||||
return True, ""
|
||||
|
||||
|
||||
Reference in New Issue
Block a user