Correcciones menores a canales

This commit is contained in:
Unknown
2018-06-18 11:23:16 -03:00
parent c1d637db2e
commit 84b5de3daf
8 changed files with 289 additions and 259 deletions
+3 -2
View File
@@ -287,7 +287,6 @@ def findvideos(item):
strm_id = scrapertools.find_single_match(data, '"id": (.*?),') strm_id = scrapertools.find_single_match(data, '"id": (.*?),')
streams = scrapertools.find_single_match(data, '"stream": (.*?)};') streams = scrapertools.find_single_match(data, '"stream": (.*?)};')
dict_strm = jsontools.load(streams) dict_strm = jsontools.load(streams)
base_url = 'http:%s%s/' % (dict_strm['accessPoint'], strm_id) base_url = 'http:%s%s/' % (dict_strm['accessPoint'], strm_id)
for server in dict_strm['servers']: for server in dict_strm['servers']:
expire = dict_strm['expire'] expire = dict_strm['expire']
@@ -297,7 +296,7 @@ def findvideos(item):
strm_url = base_url +'%s?expire=%s&callback=%s&signature=%s&last_modify=%s' % (server, expire, callback, strm_url = base_url +'%s?expire=%s&callback=%s&signature=%s&last_modify=%s' % (server, expire, callback,
signature, last_modify) signature, last_modify)
try:
strm_data = httptools.downloadpage(strm_url).data strm_data = httptools.downloadpage(strm_url).data
strm_data = scrapertools.unescape(strm_data) strm_data = scrapertools.unescape(strm_data)
title = '%s' title = '%s'
@@ -315,6 +314,8 @@ def findvideos(item):
itemlist.append(Item(channel=item.channel, title=url, url=url, action='play')) itemlist.append(Item(channel=item.channel, title=url, url=url, action='play'))
else: else:
continue continue
except:
pass
servertools.get_servers_itemlist(itemlist, lambda i: i.title % i.server) servertools.get_servers_itemlist(itemlist, lambda i: i.title % i.server)
+7 -1
View File
@@ -74,7 +74,11 @@ def menu_alf(item):
for letra in ['[0-9]', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', for letra in ['[0-9]', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R',
'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z']: 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z']:
itemlist.append(Item(channel=item.channel, action="series", title=letra, if 'series' in item.url:
action = 'series'
else:
action = 'pelis'
itemlist.append(Item(channel=item.channel, action=action, title=letra,
url=item.url + "?keywords=^" + letra + "&page=0")) url=item.url + "?keywords=^" + letra + "&page=0"))
return itemlist return itemlist
@@ -117,6 +121,7 @@ def series(item):
data = httptools.downloadpage(item.url).data data = httptools.downloadpage(item.url).data
lista = jsontools.load(data) lista = jsontools.load(data)
logger.debug(lista)
if item.extra == "next": if item.extra == "next":
lista_ = lista[25:] lista_ = lista[25:]
else: else:
@@ -171,6 +176,7 @@ def episodios(item):
# post = "page=%s&x=34&y=14" % urllib.quote(item.url) # post = "page=%s&x=34&y=14" % urllib.quote(item.url)
# response = httptools.downloadpage(url, post, follow_redirects=False).data # response = httptools.downloadpage(url, post, follow_redirects=False).data
# url = scrapertools.find_single_match(response, '<meta http-equiv="refresh".*?url=([^"]+)"') # url = scrapertools.find_single_match(response, '<meta http-equiv="refresh".*?url=([^"]+)"')
logger.debug(item)
data = httptools.downloadpage(item.url).data data = httptools.downloadpage(item.url).data
data = jsontools.load(data) data = jsontools.load(data)
+41 -14
View File
@@ -9,8 +9,7 @@ from platformcode import config, logger
__perfil__ = int(config.get_setting('perfil', 'pelisultra')) __perfil__ = int(config.get_setting('perfil', 'pelisultra'))
# Fijar perfil de color # Fijar perfil de color
perfil = [['0xFFFFE6CC', '0xFFFFCE9C', '0xFF994D00'], perfil = [['0xFFFFE6CC', '0xFFFFCE9C', '0xFF994D00'], ['0xFFA5F6AF', '0xFF5FDA6D', '0xFF11811E'],
['0xFFA5F6AF', '0xFF5FDA6D', '0xFF11811E'],
['0xFF58D3F7', '0xFF2E9AFE', '0xFF2E64FE']] ['0xFF58D3F7', '0xFF2E9AFE', '0xFF2E64FE']]
if __perfil__ < 3: if __perfil__ < 3:
@@ -20,28 +19,34 @@ else:
host = "http://www.pelisultra.com" host = "http://www.pelisultra.com"
def mainlist(item): def mainlist(item):
logger.info() logger.info()
itemlist = [] itemlist = []
item.thumbnail = "https://github.com/master-1970/resources/raw/master/images/genres/0/Directors%20Chair.png" item.thumbnail = "https://github.com/master-1970/resources/raw/master/images/genres/0/Directors%20Chair.png"
itemlist.append(item.clone(title="Películas:", folder=False, text_color="0xFFD4AF37", text_bold=True)) itemlist.append(item.clone(title="Películas:", folder=False, text_color="0xFFD4AF37", text_bold=True))
itemlist.append(Item(channel=item.channel, title=" Novedades", action="peliculas", url=host)) itemlist.append(Item(channel=item.channel, title=" Novedades", action="peliculas", url=host))
itemlist.append(Item(channel = item.channel, title = " Estrenos", action = "peliculas", url = host + "/genero/estrenos/" )) itemlist.append(
itemlist.append(Item(channel = item.channel, title = " Por género", action = "genero", url = host + "/genero/" )) Item(channel=item.channel, title=" Estrenos", action="peliculas", url=host + "/genero/estrenos/"))
itemlist.append(Item(channel=item.channel, title=" Por género", action="genero", url=host))
item.thumbnail = "https://github.com/master-1970/resources/raw/master/images/genres/0/TV%20Series.png" item.thumbnail = "https://github.com/master-1970/resources/raw/master/images/genres/0/TV%20Series.png"
itemlist.append(item.clone(title="Series:", folder=False, text_color="0xFFD4AF37", text_bold=True)) itemlist.append(item.clone(title="Series:", folder=False, text_color="0xFFD4AF37", text_bold=True))
itemlist.append(Item(channel=item.channel, title=" Todas las series", action="series", url=host + "/series/")) itemlist.append(Item(channel=item.channel, title=" Todas las series", action="series", url=host + "/series/"))
itemlist.append(Item(channel = item.channel, title = " Nuevos episodios", action = "nuevos_episodios", url = host + "/episodio/" )) itemlist.append(
itemlist.append(Item(channel = item.channel, title = "Buscar...", action = "search", url = host, text_color="red", text_bold=True)) Item(channel=item.channel, title=" Nuevos episodios", action="nuevos_episodios", url=host + "/episodio/"))
itemlist.append(
Item(channel=item.channel, title="Buscar...", action="search", url=host, text_color="red", text_bold=True))
itemlist.append(item.clone(title="Configurar canal...", text_color="green", action="configuracion", text_bold=True)) itemlist.append(item.clone(title="Configurar canal...", text_color="green", action="configuracion", text_bold=True))
return itemlist return itemlist
def configuracion(item): def configuracion(item):
from platformcode import platformtools from platformcode import platformtools
ret = platformtools.show_channel_settings() ret = platformtools.show_channel_settings()
platformtools.itemlist_refresh() platformtools.itemlist_refresh()
return ret return ret
def newest(categoria): def newest(categoria):
logger.info() logger.info()
itemlist = [] itemlist = []
@@ -68,6 +73,7 @@ def newest(categoria):
return itemlist return itemlist
def peliculas(item): def peliculas(item):
# logger.info() # logger.info()
logger.info(item) logger.info(item)
@@ -90,11 +96,16 @@ def peliculas(item):
for scrapedurl, scrapedthumbnail, scrapedtitle, scrapedyear, scrapedquality in matches: for scrapedurl, scrapedthumbnail, scrapedtitle, scrapedyear, scrapedquality in matches:
if not "/series/" in scrapedurl: if not "/series/" in scrapedurl:
scrapedquality = scrapertools.find_single_match(scrapedquality, '<span class="calidad2">(.*?)</span>') scrapedquality = scrapertools.find_single_match(scrapedquality, '<span class="calidad2">(.*?)</span>')
itemlist.append(Item(action = "findvideos", channel = item.channel, title = scrapedtitle + " (" + scrapedyear + ") [" + scrapedquality + "]", contentTitle=scrapedtitle, thumbnail = scrapedthumbnail, url = scrapedurl, quality=scrapedquality, infoLabels={'year':scrapedyear})) itemlist.append(Item(action="findvideos", channel=item.channel,
title=scrapedtitle + " (" + scrapedyear + ") [" + scrapedquality + "]",
contentTitle=scrapedtitle, thumbnail=scrapedthumbnail, url=scrapedurl,
quality=scrapedquality, infoLabels={'year': scrapedyear}))
else: else:
if item.action == "search": if item.action == "search":
itemlist.append(Item(action = "temporadas", channel = item.channel, title = scrapedtitle + " (" + scrapedyear + ")", contentSerieName=scrapedtitle, contentType="tvshow", thumbnail = scrapedthumbnail, url = scrapedurl, infoLabels={'year':scrapedyear})) itemlist.append(
Item(action="temporadas", channel=item.channel, title=scrapedtitle + " (" + scrapedyear + ")",
contentSerieName=scrapedtitle, contentType="tvshow", thumbnail=scrapedthumbnail,
url=scrapedurl, infoLabels={'year': scrapedyear}))
# InfoLabels: # InfoLabels:
tmdb.set_infoLabels_itemlist(itemlist, seekTmdb=True) tmdb.set_infoLabels_itemlist(itemlist, seekTmdb=True)
@@ -109,6 +120,7 @@ def peliculas(item):
return itemlist return itemlist
def genero(item): def genero(item):
logger.info() logger.info()
itemlist = [] itemlist = []
@@ -126,6 +138,7 @@ def genero(item):
return itemlist return itemlist
def series(item): def series(item):
logger.info() logger.info()
itemlist = [] itemlist = []
@@ -145,7 +158,9 @@ def series(item):
accion = "episodios" accion = "episodios"
for scrapedurl, scrapedthumbnail, scrapedtitle, scrapedyear in matches: for scrapedurl, scrapedthumbnail, scrapedtitle, scrapedyear in matches:
itemlist.append(Item(action = accion, channel = item.channel, title = scrapedtitle + " (" + scrapedyear + ")", contentSerieName=scrapedtitle, contentType="tvshow", thumbnail = scrapedthumbnail, url = scrapedurl, infoLabels={'year':scrapedyear})) itemlist.append(Item(action=accion, channel=item.channel, title=scrapedtitle + " (" + scrapedyear + ")",
contentSerieName=scrapedtitle, contentType="tvshow", thumbnail=scrapedthumbnail,
url=scrapedurl, infoLabels={'year': scrapedyear}))
# InfoLabels: # InfoLabels:
tmdb.set_infoLabels_itemlist(itemlist, seekTmdb=True) tmdb.set_infoLabels_itemlist(itemlist, seekTmdb=True)
@@ -160,6 +175,7 @@ def series(item):
return itemlist return itemlist
def temporadas(item): def temporadas(item):
logger.info() logger.info()
itemlist = [] itemlist = []
@@ -181,6 +197,7 @@ def temporadas(item):
return itemlist return itemlist
def episodios(item): def episodios(item):
logger.info() logger.info()
itemlist = [] itemlist = []
@@ -201,13 +218,18 @@ def episodios(item):
if item.contentSeason and str(item.contentSeason) != temporada: if item.contentSeason and str(item.contentSeason) != temporada:
continue continue
itemlist.append(item.clone(action = "findvideos", title = numero_capitulo + " - " + scrapedtitle.strip(), url = scrapedurl, contentSeason=temporada, contentEpisodeNumber=capitulo)) itemlist.append(
item.clone(action="findvideos", title=numero_capitulo + " - " + scrapedtitle.strip(), url=scrapedurl,
contentSeason=temporada, contentEpisodeNumber=capitulo))
# if item.contentTitle.startswith('Temporada'): # if item.contentTitle.startswith('Temporada'):
# if str(item.contentSeason) == temporada: # if str(item.contentSeason) == temporada:
# itemlist.append(item.clone(action = "findvideos", title = numero_capitulo + " - " + scrapedtitle.strip(), url = scrapedurl, contentSeason=temporada, contentEpisodeNumber=capitulo)) # itemlist.append(item.clone(action = "findvideos", title = numero_capitulo + " - " + scrapedtitle.strip(),
# url = scrapedurl, contentSeason=temporada, contentEpisodeNumber=capitulo))
# else: # else:
# itemlist.append(item.clone(action = "findvideos", title = numero_capitulo + " - " + scrapedtitle.strip(), url = scrapedurl, contentSeason=temporada, contentEpisodeNumber=capitulo)) # itemlist.append(item.clone(action = "findvideos", title = numero_capitulo + " - " + scrapedtitle.strip(),
# url = scrapedurl, contentSeason=temporada, contentEpisodeNumber=capitulo))
# episodios_por_pagina=20 # episodios_por_pagina=20
# if config.get_setting('episodios_x_pag', 'pelisultra').isdigit(): # if config.get_setting('episodios_x_pag', 'pelisultra').isdigit():
@@ -231,6 +253,7 @@ def episodios(item):
return itemlist_page return itemlist_page
def nuevos_episodios(item): def nuevos_episodios(item):
logger.info() logger.info()
itemlist = [] itemlist = []
@@ -251,7 +274,10 @@ def nuevos_episodios(item):
temporada = "_" temporada = "_"
capitulo = "_" capitulo = "_"
itemlist.append(Item(channel = item.channel, action = "findvideos", title = scrapedseriename +": " + numero_capitulo + " - " + scrapedtitle.strip(), url = scrapedurl, thumbnail = scrapedthumbnail, contentSerieName=scrapedseriename, contentSeason=temporada, contentEpisodeNumber=capitulo)) itemlist.append(Item(channel=item.channel, action="findvideos",
title=scrapedseriename + ": " + numero_capitulo + " - " + scrapedtitle.strip(),
url=scrapedurl, thumbnail=scrapedthumbnail, contentSerieName=scrapedseriename,
contentSeason=temporada, contentEpisodeNumber=capitulo))
# InfoLabels: # InfoLabels:
tmdb.set_infoLabels_itemlist(itemlist, seekTmdb=True) tmdb.set_infoLabels_itemlist(itemlist, seekTmdb=True)
@@ -266,6 +292,7 @@ def nuevos_episodios(item):
return itemlist return itemlist
def search(item, texto): def search(item, texto):
logger.info() logger.info()
itemlist = [] itemlist = []
+9 -9
View File
@@ -16,14 +16,14 @@ HOST = 'http://seriesdanko.to/'
IDIOMAS = {'es': 'Español', 'la': 'Latino', 'vos': 'VOS', 'vo': 'VO'} IDIOMAS = {'es': 'Español', 'la': 'Latino', 'vos': 'VOS', 'vo': 'VO'}
list_idiomas = IDIOMAS.values() list_idiomas = IDIOMAS.values()
list_servers = ['streamcloud', 'powvideo', 'gamovideo', 'streamplay', 'openload', 'flashx', 'nowvideo', 'thevideo'] list_servers = ['streamcloud', 'powvideo', 'gamovideo', 'streamplay', 'openload', 'flashx', 'nowvideo', 'thevideo']
CALIDADES = ['SD', 'MicroHD', 'HD/MKV'] list_quality = ['SD', 'MicroHD', 'HD/MKV']
def mainlist(item): def mainlist(item):
logger.info() logger.info()
autoplay.init(item.channel, list_servers, CALIDADES) autoplay.init(item.channel, list_servers, list_quality)
itemlist = list() itemlist = list()
itemlist.append(Item(channel=item.channel, title="Novedades", action="novedades", url=HOST)) itemlist.append(Item(channel=item.channel, title="Novedades", action="novedades", url=HOST))
@@ -33,7 +33,7 @@ def mainlist(item):
itemlist.append(Item(channel=item.channel, title="Buscar...", action="search", itemlist.append(Item(channel=item.channel, title="Buscar...", action="search",
url=urlparse.urljoin(HOST, "all.php"))) url=urlparse.urljoin(HOST, "all.php")))
itemlist = filtertools.show_option(itemlist, item.channel, list_idiomas, CALIDADES) itemlist = filtertools.show_option(itemlist, item.channel, list_idiomas, list_quality)
autoplay.show_option(item.channel, itemlist) autoplay.show_option(item.channel, itemlist)
@@ -76,7 +76,7 @@ def novedades(item):
itemlist.append(Item(channel=item.channel, title=title, url=urlparse.urljoin(HOST, scrapedurl), show=show, itemlist.append(Item(channel=item.channel, title=title, url=urlparse.urljoin(HOST, scrapedurl), show=show,
action="episodios", thumbnail=scrapedthumb, action="episodios", thumbnail=scrapedthumb,
context=filtertools.context(item, list_idiomas, CALIDADES), language=language)) context=filtertools.context(item, list_idiomas, list_quality), language=language))
return itemlist return itemlist
@@ -124,7 +124,7 @@ def series_seccion(item):
for scrapedurl, scrapedtitle in matches[item.first:limit]: for scrapedurl, scrapedtitle in matches[item.first:limit]:
itemlist.append(Item(channel=item.channel, action="episodios", title=scrapedtitle, show=scrapedtitle, itemlist.append(Item(channel=item.channel, action="episodios", title=scrapedtitle, show=scrapedtitle,
url=urlparse.urljoin(HOST, scrapedurl), url=urlparse.urljoin(HOST, scrapedurl),
context=filtertools.context(item, list_idiomas, CALIDADES))) context=filtertools.context(item, list_idiomas, list_quality)))
tmdb.set_infoLabels_itemlist(itemlist, seekTmdb=True) tmdb.set_infoLabels_itemlist(itemlist, seekTmdb=True)
#pagination #pagination
@@ -157,7 +157,7 @@ def series_por_letra(item):
itemlist = [] itemlist = []
for url, title, img in shows: for url, title, img in shows:
itemlist.append(item.clone(title=title, url=urlparse.urljoin(HOST, url), action="episodios", thumbnail=img, itemlist.append(item.clone(title=title, url=urlparse.urljoin(HOST, url), action="episodios", thumbnail=img,
show=title, context=filtertools.context(item, list_idiomas, CALIDADES))) show=title, context=filtertools.context(item, list_idiomas, list_quality)))
return itemlist return itemlist
@@ -172,7 +172,7 @@ def search(item, texto):
data, re.IGNORECASE) data, re.IGNORECASE)
for url, title in shows: for url, title in shows:
itemlist.append(item.clone(title=title, url=urlparse.urljoin(HOST, url), action="episodios", show=title, itemlist.append(item.clone(title=title, url=urlparse.urljoin(HOST, url), action="episodios", show=title,
context=filtertools.context(item, list_idiomas, CALIDADES))) context=filtertools.context(item, list_idiomas, list_quality)))
tmdb.set_infoLabels_itemlist(itemlist, seekTmdb=True) tmdb.set_infoLabels_itemlist(itemlist, seekTmdb=True)
# Se captura la excepción, para no interrumpir al buscador global si un canal falla # Se captura la excepción, para no interrumpir al buscador global si un canal falla
@@ -228,7 +228,7 @@ def episodios(item):
infoLabels=infoLabels)) infoLabels=infoLabels))
itemlist = filtertools.get_links(itemlist, item, list_idiomas, CALIDADES) itemlist = filtertools.get_links(itemlist, item, list_idiomas, list_quality)
tmdb.set_infoLabels_itemlist(itemlist, seekTmdb=True) tmdb.set_infoLabels_itemlist(itemlist, seekTmdb=True)
# Opción "Añadir esta serie a la videoteca de XBMC" # Opción "Añadir esta serie a la videoteca de XBMC"
@@ -266,7 +266,7 @@ def findvideos(item):
# Requerido para FilterTools # Requerido para FilterTools
itemlist = filtertools.get_links(itemlist, item, list_idiomas, CALIDADES) itemlist = filtertools.get_links(itemlist, item, list_idiomas, list_quality)
# Requerido para AutoPlay # Requerido para AutoPlay
+7 -7
View File
@@ -21,7 +21,7 @@ HOST = "http://www.seriespapaya.com"
IDIOMAS = {'es': 'Español', 'lat': 'Latino', 'in': 'Inglés', 'ca': 'Catalán', 'sub': 'VOSE', 'Español Latino':'lat', IDIOMAS = {'es': 'Español', 'lat': 'Latino', 'in': 'Inglés', 'ca': 'Catalán', 'sub': 'VOSE', 'Español Latino':'lat',
'Español Castellano':'es', 'Sub Español':'VOSE'} 'Español Castellano':'es', 'Sub Español':'VOSE'}
list_idiomas = IDIOMAS.values() list_idiomas = IDIOMAS.values()
CALIDADES = ['360p', '480p', '720p HD', '1080p HD', 'default'] list_quality = ['360p', '480p', '720p HD', '1080p HD', 'default']
list_servers = ['powvideo', 'streamplay', 'filebebo', 'flashx', 'gamovideo', 'nowvideo', 'openload', 'streamango', list_servers = ['powvideo', 'streamplay', 'filebebo', 'flashx', 'gamovideo', 'nowvideo', 'openload', 'streamango',
'streamcloud', 'vidzi', 'clipwatching', ] 'streamcloud', 'vidzi', 'clipwatching', ]
@@ -29,7 +29,7 @@ list_servers = ['powvideo', 'streamplay', 'filebebo', 'flashx', 'gamovideo', 'no
def mainlist(item): def mainlist(item):
logger.info() logger.info()
autoplay.init(item.channel, list_servers, CALIDADES) autoplay.init(item.channel, list_servers, list_quality)
thumb_series = get_thumb("channels_tvshow.png") thumb_series = get_thumb("channels_tvshow.png")
thumb_series_az = get_thumb("channels_tvshow_az.png") thumb_series_az = get_thumb("channels_tvshow_az.png")
@@ -42,7 +42,7 @@ def mainlist(item):
Item(action="novedades", title="Capítulos de estreno", channel=item.channel, thumbnail=thumb_series)) Item(action="novedades", title="Capítulos de estreno", channel=item.channel, thumbnail=thumb_series))
itemlist.append(Item(action="search", title="Buscar", channel=item.channel, thumbnail=thumb_buscar)) itemlist.append(Item(action="search", title="Buscar", channel=item.channel, thumbnail=thumb_buscar))
itemlist = filtertools.show_option(itemlist, item.channel, list_idiomas, CALIDADES) itemlist = filtertools.show_option(itemlist, item.channel, list_idiomas, list_quality)
autoplay.show_option(item.channel, itemlist) autoplay.show_option(item.channel, itemlist)
@@ -92,7 +92,7 @@ def series_por_letra_y_grupo(item):
show=name, show=name,
url=urlparse.urljoin(HOST, url), url=urlparse.urljoin(HOST, url),
thumbnail=urlparse.urljoin(HOST, img), thumbnail=urlparse.urljoin(HOST, img),
context=filtertools.context(item, list_idiomas, CALIDADES), context=filtertools.context(item, list_idiomas, list_quality),
plot = plot, plot = plot,
infoLabels={'year':year} infoLabels={'year':year}
) )
@@ -153,7 +153,7 @@ def episodios(item):
language=filter_lang language=filter_lang
)) ))
itemlist = filtertools.get_links(itemlist, item, list_idiomas, CALIDADES) itemlist = filtertools.get_links(itemlist, item, list_idiomas, list_quality)
# Opción "Añadir esta serie a la videoteca de XBMC" # Opción "Añadir esta serie a la videoteca de XBMC"
if config.get_videolibrary_support() and len(itemlist) > 0: if config.get_videolibrary_support() and len(itemlist) > 0:
@@ -177,7 +177,7 @@ def search(item, texto):
show=show["titulo"], show=show["titulo"],
url=urlparse.urljoin(HOST, show["urla"]), url=urlparse.urljoin(HOST, show["urla"]),
thumbnail=urlparse.urljoin(HOST, show["img"]), thumbnail=urlparse.urljoin(HOST, show["img"]),
context=filtertools.context(item, list_idiomas, CALIDADES) context=filtertools.context(item, list_idiomas, list_quality)
) for show in tvshows] ) for show in tvshows]
@@ -227,7 +227,7 @@ def findvideos(item):
# Requerido para FilterTools # Requerido para FilterTools
itemlist = filtertools.get_links(itemlist, item, list_idiomas, CALIDADES) itemlist = filtertools.get_links(itemlist, item, list_idiomas, list_quality)
# Requerido para AutoPlay # Requerido para AutoPlay
+5 -3
View File
@@ -83,7 +83,7 @@ def list_all(item):
url = host + scrapedurl url = host + scrapedurl
thumbnail = scrapedthumbnail thumbnail = scrapedthumbnail
title = scrapedtitle title = scrapertools.decodeHtmlentities(scrapedtitle)
itemlist.append(Item(channel=item.channel, itemlist.append(Item(channel=item.channel,
action='seasons', action='seasons',
@@ -125,7 +125,10 @@ def section(item):
for scrapedurl, scrapedtitle in matches: for scrapedurl, scrapedtitle in matches:
if item.title == 'Generos':
url = host + scrapedurl url = host + scrapedurl
else:
url = scrapedurl
title = scrapedtitle title = scrapedtitle
itemlist.append(Item(channel=item.channel, itemlist.append(Item(channel=item.channel,
action='list_all', action='list_all',
@@ -211,7 +214,6 @@ def add_language(title, string):
languages = scrapertools.find_multiple_matches(string, '/banderas/(.*?).png') languages = scrapertools.find_multiple_matches(string, '/banderas/(.*?).png')
language = [] language = []
for lang in languages: for lang in languages:
@@ -219,7 +221,7 @@ def add_language(title, string):
lang = 'vos' lang = 'vos'
if len(languages) == 1: if len(languages) == 1:
language = IDIOMAS[languages[0]] language = IDIOMAS[lang]
title = '%s [%s]' % (title, language) title = '%s [%s]' % (title, language)
else: else:
language.append(IDIOMAS[lang]) language.append(IDIOMAS[lang])
@@ -149,7 +149,6 @@ def generos(item):
itemlist = [] itemlist = []
data = httptools.downloadpage(item.url).data data = httptools.downloadpage(item.url).data
data = re.sub(r'"|\n|\r|\t|&nbsp;|<br>|\s{2,}', "", data) data = re.sub(r'"|\n|\r|\t|&nbsp;|<br>|\s{2,}', "", data)
logger.debug(data)
patron = 'genres menu-item-.*?><a href=(.*?)>(.*?)<' patron = 'genres menu-item-.*?><a href=(.*?)>(.*?)<'
matches = re.compile(patron, re.DOTALL).findall(data) matches = re.compile(patron, re.DOTALL).findall(data)
@@ -201,10 +200,8 @@ def alpha(item):
url = 'https://www.ultrapeliculashd.com/wp-json/dooplay/glossary/?term=%s&nonce=4e850b7d59&type=all' % item.id url = 'https://www.ultrapeliculashd.com/wp-json/dooplay/glossary/?term=%s&nonce=4e850b7d59&type=all' % item.id
data = httptools.downloadpage(url).data data = httptools.downloadpage(url).data
dict_data = jsontools.load(data) dict_data = jsontools.load(data)
logger.debug(dict_data) if 'error' not in dict_data:
for elem in dict_data: for elem in dict_data:
logger.debug(dict_data[elem])
elem = dict_data[elem] elem = dict_data[elem]
itemlist.append(Item(channel=item.channel, action='findvideos', title = elem['title'], url=elem['url'], itemlist.append(Item(channel=item.channel, action='findvideos', title = elem['title'], url=elem['url'],
thumbnail=elem['img'])) thumbnail=elem['img']))
@@ -216,19 +213,15 @@ def findvideos(item):
itemlist = [] itemlist = []
data = httptools.downloadpage(item.url).data data = httptools.downloadpage(item.url).data
data = re.sub(r'"|\n|\r|\t|&nbsp;|<br>|\s{2,}', "", data) data = re.sub(r'"|\n|\r|\t|&nbsp;|<br>|\s{2,}', "", data)
#logger.debug(data)
patron = '<iframe.*?rptss src=(.*?) (?:width.*?|frameborder.*?) allowfullscreen><\/iframe>' patron = '<iframe.*?rptss src=(.*?) (?:width.*?|frameborder.*?) allowfullscreen><\/iframe>'
matches = re.compile(patron, re.DOTALL).findall(data) matches = re.compile(patron, re.DOTALL).findall(data)
for video_url in matches: for video_url in matches:
logger.debug('video_url: %s' % video_url)
if 'stream' in video_url and 'streamango' not in video_url: if 'stream' in video_url and 'streamango' not in video_url:
data = httptools.downloadpage('https:'+video_url).data data = httptools.downloadpage('https:'+video_url).data
logger.debug(data)
if not 'iframe' in video_url: if not 'iframe' in video_url:
new_url=scrapertools.find_single_match(data, 'iframe src="(.*?)"') new_url=scrapertools.find_single_match(data, 'iframe src="(.*?)"')
new_data = httptools.downloadpage(new_url).data new_data = httptools.downloadpage(new_url).data
logger.debug('new_data %s' % new_data)
url= '' url= ''
try: try:
url, quality = scrapertools.find_single_match(new_data, 'file:.*?(?:\"|\')(https.*?)(?:\"|\'),' url, quality = scrapertools.find_single_match(new_data, 'file:.*?(?:\"|\')(https.*?)(?:\"|\'),'
+2 -1
View File
@@ -69,7 +69,8 @@ def list_all(item):
action = 'seasons' action = 'seasons'
if 'episode' in item.url: if 'episode' in item.url:
scrapedtitle, season, episode = scrapertools.find_single_match(scrapedtitle, '(.*?) (\d+)x(\d+)') scrapedtitle, season, episode = scrapertools.find_single_match(scrapedtitle,
'(.*?) (\d+).*?(?:x|X).*?(\d+)')
contentSerieName = scrapedtitle contentSerieName = scrapedtitle
scrapedtitle = '%sx%s - %s' % (season, episode, scrapedtitle) scrapedtitle = '%sx%s - %s' % (season, episode, scrapedtitle)
action='findvideos' action='findvideos'