diff --git a/plugin.video.alfa/addon.xml b/plugin.video.alfa/addon.xml index bd0d4480..4d8cfe81 100755 --- a/plugin.video.alfa/addon.xml +++ b/plugin.video.alfa/addon.xml @@ -1,5 +1,5 @@  - + @@ -19,15 +19,13 @@ [B]Estos son los cambios para esta versión:[/B] [COLOR green][B]Arreglos[/B][/COLOR] - [I]- cinetux + [I]- pelis24 - vidoza - - canalpelis - - pelisplanet + - cinetux + - peliculasrey - newpct1 - - pelisplus - - torrentlocura - fix para usar videoteca y en mediaserver + - animeflv - fixes internos[/I] - [COLOR green]Gracias a [COLOR yellow][B]xabier100[/B][/COLOR] y [COLOR yellow][B]fermintxu[/B][/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/animeflv.py b/plugin.video.alfa/channels/animeflv.py index ec68dd95..7452e3e4 100644 --- a/plugin.video.alfa/channels/animeflv.py +++ b/plugin.video.alfa/channels/animeflv.py @@ -1,11 +1,14 @@ # -*- coding: utf-8 -*- import re +import time import urlparse +import urllib from channels import renumbertools from core import httptools from core import jsontools +from core import servertools from core import scrapertools from core.item import Item from platformcode import logger @@ -273,42 +276,54 @@ def findvideos(item): itemlist = [] - data = httptools.downloadpage(item.url).data - data = re.sub(r"\n|\r|\t|\s{2}|-\s", "", data) + data = re.sub(r"\n|\r|\t|\s{2}|-\s", "", httptools.downloadpage(item.url).data) + list_videos = scrapertools.find_multiple_matches(data, 'video\[\d\]\s=\s\'(.*?)') logger.info("data=" + data) @@ -54,7 +55,7 @@ def Idiomas(item): logger.info() # Descarga la pagina - data = scrapertools.cache_page(item.url) + data = httptools.downloadpage(item.url).data data = scrapertools.find_single_match(data, '
(.*?)
') logger.info("data=" + data) @@ -80,7 +81,7 @@ def calidades(item): logger.info() # Descarga la pagina - data = scrapertools.cache_page(item.url) + data = httptools.downloadpage(item.url).data data = scrapertools.find_single_match(data, '
(.*?)
') logger.info("data=" + data) @@ -106,7 +107,7 @@ def generos(item): logger.info() # Descarga la pagina - data = scrapertools.cache_page(item.url) + data = httptools.downloadpage(item.url).data data = scrapertools.find_single_match(data, '
(.*?)
') logger.info("data=" + data) @@ -121,6 +122,8 @@ def generos(item): plot = "" url = urlparse.urljoin(item.url, scrapedurl) logger.debug("title=[" + title + "], url=[" + url + "], thumbnail=[" + thumbnail + "]") + if "Adulto" in title and config.get_setting("adult_mode") == 0: + continue itemlist.append( Item(channel=item.channel, action="peliculas", title=title, url=url, thumbnail=thumbnail, plot=plot, fulltitle=title, viewmode="movie")) @@ -148,7 +151,7 @@ def peliculas(item): logger.info() # Descarga la pagina - data = scrapertools.cache_page(item.url) + data = httptools.downloadpage(item.url).data logger.info("data=" + data) data = re.sub(r"\n|\r|\t|\s{2}| ", "", data) @@ -178,7 +181,7 @@ def findvideos(item): logger.info() # Descarga la pagina - data = scrapertools.cache_page(item.url) + data = httptools.downloadpage(item.url).data # logger.info("data="+data) # Extrae las entradas (carpetas) diff --git a/plugin.video.alfa/channels/pelis24.json b/plugin.video.alfa/channels/pelis24.json index 70bb73e0..fd53d735 100755 --- a/plugin.video.alfa/channels/pelis24.json +++ b/plugin.video.alfa/channels/pelis24.json @@ -20,7 +20,8 @@ "categories": [ "latino", "movie", - "vos" + "vos", + "direct" ], "settings": [ { diff --git a/plugin.video.alfa/channels/pelis24.py b/plugin.video.alfa/channels/pelis24.py old mode 100755 new mode 100644 index 15b3216a..2de77d7b --- a/plugin.video.alfa/channels/pelis24.py +++ b/plugin.video.alfa/channels/pelis24.py @@ -5,8 +5,11 @@ import sys from core import httptools from core import scrapertools +from core import servertools from core.item import Item from platformcode import logger +from core import tmdb + thumbnail_host = 'https://github.com/master-1970/resources/raw/master/images/squares/pelis24.PNG' @@ -18,14 +21,14 @@ def mainlist(item): item.action = "peliculas" itemlist.append(item.clone(title="Novedades", url="http://www.pelis24.tv/ultimas-peliculas/")) itemlist.append(item.clone(title="Estrenos", url="http://pelis24.tv/estrenos/")) - itemlist.append(item.clone(title="", folder=False)) + itemlist.append(item.clone(title="Calidad HD", url="https://pelis24.tv/xfsearch/calidad/HD")) + itemlist.append(item.clone(title="Calidad HQ", url="https://pelis24.tv/xfsearch/calidad/HQ")) + itemlist.append(item.clone(title="Calidad SD", url="https://pelis24.tv/xfsearch/calidad/SD")) itemlist.append(item.clone(title="Castellano", url="http://pelis24.tv/pelicula-ca/")) - itemlist.append(item.clone(title="Latino", url="http://pelis24.tv/pelicula-latino/")) + itemlist.append(item.clone(title="Latino", url="https://pelis24.tv/pelicula-la/")) itemlist.append(item.clone(title="Versión original", url="http://pelis24.tv/peliculasvo/")) - itemlist.append(item.clone(title="Versión original subtitulada", url="http://pelis24.tv/peliculasvose/")) - - itemlist.append(item.clone(title="", folder=False)) - itemlist.append(item.clone(title="Filtrar por género", action="genero", url="http://pelis24.tv/tags/")) + itemlist.append(item.clone(title="Versión original subtitulada", url="http://pelis24.tv/peliculas-su/")) + itemlist.append(item.clone(title="Filtrar por género", action="genero", url="http://pelis24.tv")) itemlist.append(item.clone(title="Buscar", action="search", url="http://www.pelis24.tv/")) return itemlist @@ -105,12 +108,15 @@ def buscar(item): def genero(item): logger.info() itemlist = [] - generos = ["Animación", "Aventuras", "Bélico", "Ciencia+ficción", "Crimen", "Comedia", - "Deporte", "Drama", "Fantástico", "Infantil", "Musical", "Romance", "Terror", "Thriller"] + data = httptools.downloadpage(item.url).data + data = re.sub(r"\n|\r|\t|\s{2}| ", "", data) + patron = '
  • <\/li>' + matches = re.compile(patron, re.DOTALL).findall(data) - for g in generos: - itemlist.append(Item(channel=item.channel, action="peliculas", title=g.replace('+', ' '), - thumbnail=thumbnail_host, url=item.url + g + "/")) + for scrapedurl, scrapedtitle in matches: + url = '%s/xfsearch/genero/%s' % (item.url, scrapedurl) + itemlist.append(Item(channel=item.channel, action="peliculas", title=scrapedurl, + thumbnail=thumbnail_host, url=url)) return itemlist @@ -126,8 +132,8 @@ def peliculas(item): patron = '
    .*?' patron += '(.*?)'%id) + server = servertools.get_server_from_url(scrapedurl) + title = '%s (%s) (%s)' % (item.title, server, lang) + thumbnail = '' + if 'enlac' in scrapedurl: + + if 'google' in scrapedurl: + server = 'gvideo' + elif 'openload' in scrapedurl: + server = 'openload' + + title = '%s (%s) (%s)'%(item.title, server, lang) + scrapedurl = scrapedurl.replace('embed','stream') + gdata = httptools.downloadpage(scrapedurl).data + url_list = servertools.findvideosbyserver(gdata, server) + for url in url_list: + if url[1] not in duplicated: + thumbnail = servertools.guess_server_thumbnail(server) + itemlist.append(item.clone(title=title, url=url[1], action='play', server=server, + thumbnail = thumbnail)) + duplicated.append(url[1]) + + elif '.html' in scrapedurl: + url_list = servertools.findvideosbyserver(data, server) + for url in url_list: + if url[1] not in duplicated: + thumbnail = servertools.guess_server_thumbnail(server) + itemlist.append(item.clone(title = title, url=url[1], action='play', server=server, + thumbnail = thumbnail)) + duplicated.append(url[1]) + else: + url = scrapedurl + if url not in duplicated: + thumbnail = servertools.guess_server_thumbnail(server) + itemlist.append(item.clone(title= title, url=url, action='play', server=server, thumbnail = + thumbnail)) + duplicated.append(url) return itemlist + + + + diff --git a/plugin.video.alfa/servers/redirects.py b/plugin.video.alfa/servers/redirects.py index 247819aa..b825ec5f 100755 --- a/plugin.video.alfa/servers/redirects.py +++ b/plugin.video.alfa/servers/redirects.py @@ -19,27 +19,5 @@ def get_video_url(page_url, premium=False, user="", password="", video_password= request = urllib2.Request(jk_url, headers=request_headers) response = urllib2.urlopen(request) video_urls.append([".mp4 [redirects]", response.geturl()]) - else: - headers = [] - headers.append(["User-Agent", - "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2062.94 Safari/537.36"]) - headers.append(["Accept-Encoding", "gzip,deflate,sdch"]) - page_url = page_url.replace("https://animeflv.net/embed_izanagi.php?key=", - "https://s2.animeflv.net/izanagi.php?id=") - page_url = page_url.replace("http://animeflv.net/embed_yotta.php?key=", - "https://s1.animeflv.com/gdrive.php?id=") - data = scrapertools.cache_page(page_url, headers=headers) - data = data.replace("\\\\", "") - data = data.replace("\\/", "/") - patronvideos = '"file":"(.+?)"' - matches = re.compile(patronvideos, re.DOTALL).findall(data) - for match in matches: - video_urls.append([".mp4 [redirects]", match]) - - patronvideos = '(http://www.animeid.+?)"' - matches = re.compile(patronvideos, re.DOTALL).findall(data) - for match in matches: - response = urllib2.urlopen(match) - video_urls.append([".mp4 [redirects]", response.geturl()]) return video_urls diff --git a/plugin.video.alfa/servers/vidoza.py b/plugin.video.alfa/servers/vidoza.py index f3f61036..eacec9e5 100755 --- a/plugin.video.alfa/servers/vidoza.py +++ b/plugin.video.alfa/servers/vidoza.py @@ -8,7 +8,7 @@ from platformcode import logger def test_video_exists(page_url): logger.info("(page_url='%s')" % page_url) data = httptools.downloadpage(page_url).data - if "Page not found" in data: + if "Page not found" in data or "File was deleted" in data: return False, "[vidoza] El archivo no existe o ha sido borrado" elif "processing" in data: return False, "[vidoza] El vídeo se está procesando"