(.*?)')
- itemlist.append(Item(action = "findvideos", channel = item.channel, title = scrapedtitle + " (" + scrapedyear + ") [" + scrapedquality + "]", contentTitle=scrapedtitle, thumbnail = scrapedthumbnail, url = scrapedurl, quality=scrapedquality, infoLabels={'year':scrapedyear}))
- else:
- 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}))
+ scrapertools.printMatches(matches)
+ for scrapedurl, scrapedthumbnail, scrapedtitle, scrapedyear, scrapedquality in matches:
+ if not "/series/" in scrapedurl:
+ scrapedquality = scrapertools.find_single_match(scrapedquality, '
(.*?)')
+ itemlist.append(Item(action="findvideos", channel=item.channel,
+ title=scrapedtitle + " (" + scrapedyear + ") [" + scrapedquality + "]",
+ contentTitle=scrapedtitle, thumbnail=scrapedthumbnail, url=scrapedurl,
+ quality=scrapedquality, infoLabels={'year': scrapedyear}))
+ else:
+ 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}))
+ # InfoLabels:
+ tmdb.set_infoLabels_itemlist(itemlist, seekTmdb=True)
- # InfoLabels:
- tmdb.set_infoLabels_itemlist(itemlist, seekTmdb=True)
+ # Pagina siguiente
+ patron_siguiente = 'class="pag_b">
(.*?)'
- matches = scrapertools.find_multiple_matches(data, patron)
- # Se quita "Estrenos" de la lista porque tiene su propio menu
- matches.pop(0)
+ logger.info()
+ itemlist = []
+ data = httptools.downloadpage(item.url).data
+ # Delimita la búsqueda a la lista donde estan los géneros
+ data = scrapertools.find_single_match(data, '(?s)')
+ # Extrae la url y el género
+ patron = '
(.*?)'
+ matches = scrapertools.find_multiple_matches(data, patron)
+ # Se quita "Estrenos" de la lista porque tiene su propio menu
+ matches.pop(0)
- for scrapedurl, scrapedtitle in matches:
- itemlist.append(Item(action = "peliculas", channel = item.channel, title = scrapedtitle, url = scrapedurl))
+ for scrapedurl, scrapedtitle in matches:
+ itemlist.append(Item(action="peliculas", channel=item.channel, title=scrapedtitle, url=scrapedurl))
+
+ return itemlist
- return itemlist
def series(item):
- logger.info()
- itemlist = []
- data = httptools.downloadpage(item.url).data
- # Se saca la info
- patron = '(?s)class="ml-item.*?' # base
- patron += 'a href="([^"]+).*?' # url
- patron += 'img src="([^"]+).*?' # imagen
- patron += 'alt="([^"]+).*?' # titulo
- patron += 'class="year">(\d{4})' # año
- matches = scrapertools.find_multiple_matches(data, patron)
+ logger.info()
+ itemlist = []
+ data = httptools.downloadpage(item.url).data
+ # Se saca la info
+ patron = '(?s)class="ml-item.*?' # base
+ patron += 'a href="([^"]+).*?' # url
+ patron += 'img src="([^"]+).*?' # imagen
+ patron += 'alt="([^"]+).*?' # titulo
+ patron += 'class="year">(\d{4})' # año
+ matches = scrapertools.find_multiple_matches(data, patron)
- #if config.get_setting('temporada_o_todos', 'pelisultra') == 0:
- if config.get_setting('temporada_o_todos', 'pelisultra'):
- accion="temporadas"
- else:
- accion="episodios"
+ # if config.get_setting('temporada_o_todos', 'pelisultra') == 0:
+ if config.get_setting('temporada_o_todos', 'pelisultra'):
+ accion = "temporadas"
+ else:
+ accion = "episodios"
- 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}))
+ 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}))
- # InfoLabels:
- tmdb.set_infoLabels_itemlist(itemlist, seekTmdb=True)
+ # InfoLabels:
+ tmdb.set_infoLabels_itemlist(itemlist, seekTmdb=True)
- # Pagina siguiente
- patron_siguiente='class="pag_b">
item.page + episodios_por_pagina:
- itemlist_page.append(item.clone(title = ">>> Pagina siguiente", page = item.page + episodios_por_pagina))
+ itemlist_page = itemlist[item.page: item.page + episodios_por_pagina]
- # InfoLabels:
- tmdb.set_infoLabels_itemlist(itemlist_page, seekTmdb=True)
+ if len(itemlist) > item.page + episodios_por_pagina:
+ itemlist_page.append(item.clone(title=">>> Pagina siguiente", page=item.page + episodios_por_pagina))
+
+ # InfoLabels:
+ tmdb.set_infoLabels_itemlist(itemlist_page, seekTmdb=True)
+
+ return itemlist_page
- return itemlist_page
def nuevos_episodios(item):
- logger.info()
- itemlist = []
- data = httptools.downloadpage(item.url).data
- patron = '(?s).*?' # base
- patron += '' # url
- patron += '(.*?).*?' # nombre_serie
- patron += ' .*?' # base
+ patron += '' # url
+ patron += '(.*?).*?' # nombre_serie
+ patron += ' 0:
@@ -177,7 +177,7 @@ def search(item, texto):
show=show["titulo"],
url=urlparse.urljoin(HOST, show["urla"]),
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]
@@ -227,7 +227,7 @@ def findvideos(item):
# 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
diff --git a/plugin.video.alfa/channels/seriesverde.py b/plugin.video.alfa/channels/seriesverde.py
index c986e8ee..ce8598d6 100644
--- a/plugin.video.alfa/channels/seriesverde.py
+++ b/plugin.video.alfa/channels/seriesverde.py
@@ -83,7 +83,7 @@ def list_all(item):
url = host + scrapedurl
thumbnail = scrapedthumbnail
- title = scrapedtitle
+ title = scrapertools.decodeHtmlentities(scrapedtitle)
itemlist.append(Item(channel=item.channel,
action='seasons',
@@ -125,7 +125,10 @@ def section(item):
for scrapedurl, scrapedtitle in matches:
- url = host + scrapedurl
+ if item.title == 'Generos':
+ url = host + scrapedurl
+ else:
+ url = scrapedurl
title = scrapedtitle
itemlist.append(Item(channel=item.channel,
action='list_all',
@@ -211,7 +214,6 @@ def add_language(title, string):
languages = scrapertools.find_multiple_matches(string, '/banderas/(.*?).png')
-
language = []
for lang in languages:
@@ -219,7 +221,7 @@ def add_language(title, string):
lang = 'vos'
if len(languages) == 1:
- language = IDIOMAS[languages[0]]
+ language = IDIOMAS[lang]
title = '%s [%s]' % (title, language)
else:
language.append(IDIOMAS[lang])
diff --git a/plugin.video.alfa/channels/ultrapeliculashd.py b/plugin.video.alfa/channels/ultrapeliculashd.py
index 66e882d1..8c98653b 100644
--- a/plugin.video.alfa/channels/ultrapeliculashd.py
+++ b/plugin.video.alfa/channels/ultrapeliculashd.py
@@ -149,7 +149,6 @@ def generos(item):
itemlist = []
data = httptools.downloadpage(item.url).data
data = re.sub(r'"|\n|\r|\t| | |\s{2,}', "", data)
- logger.debug(data)
patron = 'genres menu-item-.*?>(.*?)<'
matches = re.compile(patron, re.DOTALL).findall(data)
@@ -201,13 +200,11 @@ def alpha(item):
url = 'https://www.ultrapeliculashd.com/wp-json/dooplay/glossary/?term=%s&nonce=4e850b7d59&type=all' % item.id
data = httptools.downloadpage(url).data
dict_data = jsontools.load(data)
- logger.debug(dict_data)
-
- for elem in dict_data:
- logger.debug(dict_data[elem])
- elem = dict_data[elem]
- itemlist.append(Item(channel=item.channel, action='findvideos', title = elem['title'], url=elem['url'],
- thumbnail=elem['img']))
+ if 'error' not in dict_data:
+ for elem in dict_data:
+ elem = dict_data[elem]
+ itemlist.append(Item(channel=item.channel, action='findvideos', title = elem['title'], url=elem['url'],
+ thumbnail=elem['img']))
return itemlist
@@ -216,19 +213,15 @@ def findvideos(item):
itemlist = []
data = httptools.downloadpage(item.url).data
data = re.sub(r'"|\n|\r|\t| | |\s{2,}', "", data)
- #logger.debug(data)
patron = '<\/iframe>'
matches = re.compile(patron, re.DOTALL).findall(data)
for video_url in matches:
- logger.debug('video_url: %s' % video_url)
if 'stream' in video_url and 'streamango' not in video_url:
data = httptools.downloadpage('https:'+video_url).data
- logger.debug(data)
if not 'iframe' in video_url:
new_url=scrapertools.find_single_match(data, 'iframe src="(.*?)"')
new_data = httptools.downloadpage(new_url).data
- logger.debug('new_data %s' % new_data)
url= ''
try:
url, quality = scrapertools.find_single_match(new_data, 'file:.*?(?:\"|\')(https.*?)(?:\"|\'),'
diff --git a/plugin.video.alfa/channels/wikiseries.py b/plugin.video.alfa/channels/wikiseries.py
index 89e65e97..665b778d 100644
--- a/plugin.video.alfa/channels/wikiseries.py
+++ b/plugin.video.alfa/channels/wikiseries.py
@@ -69,7 +69,8 @@ def list_all(item):
action = 'seasons'
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
scrapedtitle = '%sx%s - %s' % (season, episode, scrapedtitle)
action='findvideos'
|