diff --git a/plugin.video.alfa/channels/danimados.py b/plugin.video.alfa/channels/danimados.py index c319f680..c068ceeb 100644 --- a/plugin.video.alfa/channels/danimados.py +++ b/plugin.video.alfa/channels/danimados.py @@ -171,6 +171,8 @@ def findvideos(item): data1 = httptools.downloadpage(host + "wp-admin/admin-ajax.php", headers=headers, post=post).data url1 = scrapertools.find_single_match(data1, "src='([^']+)") url1 = devuelve_enlace(url1) + if "drive.google" in url1: + url1 = url1.replace("view","preview") if url1: itemlist.append(item.clone(title="Ver en %s",url=url1, action="play")) tmdb.set_infoLabels(itemlist) diff --git a/plugin.video.alfa/channels/special.json b/plugin.video.alfa/channels/special.json deleted file mode 100644 index ace9d3a0..00000000 --- a/plugin.video.alfa/channels/special.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "id": "special", - "name": "", - "active": true, - "adult": false, - "language": [], - "thumbnail": "https://i.postimg.cc/FR2nygS0/g4567.png", - "banner": "", - "categories": [ - "movie" - ] -} diff --git a/plugin.video.alfa/channels/special.py b/plugin.video.alfa/channels/special.py deleted file mode 100644 index 836d9c19..00000000 --- a/plugin.video.alfa/channels/special.py +++ /dev/null @@ -1,78 +0,0 @@ -# -*- coding: utf-8 -*- -# -*- Channel Halloween -*- -# -*- Created for Alfa-addon -*- -# -*- By the Alfa Develop Group -*- - -import re - -from channels import autoplay -from channels import filtertools -from core import httptools -from core import scrapertools -from core import servertools -from core import jsontools -from core import tmdb -from core.item import Item -from platformcode import config, logger -from channelselector import get_thumb - -host = 'https://www.imdb.com/list/ls027655523/?sort=list_order,asc&st_dt=&mode=detail&page=' - - -def get_source(url): - logger.info() - data = httptools.downloadpage(url).data - data = re.sub(r'\n|\r|\t| |
|\s{2,}', "", data) - return data - -def mainlist(item): - logger.info() - item.url = host - item.first = 60 - item.last = 80 - item.page = 1 - return list_all(item) - - -def list_all(item): - logger.info() - from core import jsontools - itemlist = [] - - data = get_source('%s%s' % (host, item.page)) - data = scrapertools.find_single_match(data, '"itemListElement":([^\]]+)\]') - data = data + ']' - #logger.debug(data) - movie_list = eval(data) - for movie in movie_list[item.first:item.last]: - - IMDBNumber = movie['url'].replace('title','').replace('/','') - - - new_item = Item(channel='search', contentType='movie', action='do_search', - infoLabels={'imdb_id': IMDBNumber}) - - #new_item.infoLabels = tmdb.find_and_set_infoLabels(new_item) - itemlist.append(new_item) - logger.debug('id %s' % IMDBNumber) - #logger.debug(new_item) - - - tmdb.set_infoLabels_itemlist(itemlist, seekTmdb=True) - - for movie in itemlist: - movie.title = movie.infoLabels['title'] - movie.wanted = movie.title - - if item.last + 20 < len(movie_list): - first = item.last - last = item.last + 20 - page = item.page - else: - first = 0 - last = 20 - page = item.page + 1 - - itemlist.append(Item(channel=item.channel, title='Siguiente >>', action='list_all', - last=last, first=first, page=page)) - return itemlist diff --git a/plugin.video.alfa/channels/tvmoviedb.py b/plugin.video.alfa/channels/tvmoviedb.py index c7244a80..1ec3fc1c 100644 --- a/plugin.video.alfa/channels/tvmoviedb.py +++ b/plugin.video.alfa/channels/tvmoviedb.py @@ -35,7 +35,7 @@ langi = langs[config.get_setting('imdb', "tvmoviedb")] adult_mal = config.get_setting('adult_mal', "tvmoviedb") mal_ck = "MzE1MDQ2cGQ5N2llYTY4Z2xwbGVzZjFzbTY=" images_predef = "https://raw.githubusercontent.com/master-1970/resources/master/images/genres/" -default_fan = filetools.join(config.get_runtime_path(), "fanart.jpg") +default_fan = filetools.join(config.get_runtime_path(), "fanart1.jpg") def mainlist(item): diff --git a/plugin.video.alfa/core/httptools.py b/plugin.video.alfa/core/httptools.py index fe149f3c..18727998 100644 --- a/plugin.video.alfa/core/httptools.py +++ b/plugin.video.alfa/core/httptools.py @@ -99,7 +99,7 @@ load_cookies() def downloadpage(url, post=None, headers=None, timeout=None, follow_redirects=True, cookies=True, replace_headers=False, - add_referer=False, only_headers=False, bypass_cloudflare=True, count_retries=0, random_headers=False): + add_referer=False, only_headers=False, bypass_cloudflare=True, count_retries=0, random_headers=False, ignore_response_code=False): """ Abre una url y retorna los datos obtenidos @@ -124,6 +124,8 @@ def downloadpage(url, post=None, headers=None, timeout=None, follow_redirects=Tr @type only_headers: bool @param random_headers: Si True, utiliza el método de seleccionar headers aleatorios. @type random_headers: bool + @param ignore_response_code: Si es True, ignora el método para WebErrorException para error como el error 404 en veseriesonline, pero es un data funcional + @type ignore_response_code: bool @return: Resultado de la petición @rtype: HTTPResponse @@ -256,7 +258,7 @@ def downloadpage(url, post=None, headers=None, timeout=None, follow_redirects=Tr # error 4xx o 5xx se lanza excepcion (menos para servidores) # response["code"] = 400 # linea de código para probar is_channel = str(is_channel).replace("/servers/","\\servers\\") # Para sistemas operativos diferente a Windows la ruta cambia - if type(response["code"]) == int and "\\servers\\" not in str(is_channel): + if type(response["code"]) == int and "\\servers\\" not in str(is_channel) and not ignore_response_code: if response["code"] > 399 and (server_cloudflare == "cloudflare" and response["code"] != 503): raise WebErrorException(urlparse.urlparse(url)[1]) diff --git a/plugin.video.alfa/platformcode/platformtools.py b/plugin.video.alfa/platformcode/platformtools.py index aa322a5e..58fc0d20 100644 --- a/plugin.video.alfa/platformcode/platformtools.py +++ b/plugin.video.alfa/platformcode/platformtools.py @@ -210,7 +210,7 @@ def render_items(itemlist, parent_item): if item.fanart: fanart = item.fanart else: - fanart = os.path.join(config.get_runtime_path(), "fanart.jpg") + fanart = os.path.join(config.get_runtime_path(), "fanart1.jpg") # Creamos el listitem #listitem = xbmcgui.ListItem(item.title) diff --git a/plugin.video.alfa/servers/mediafire.py b/plugin.video.alfa/servers/mediafire.py index 3c34e23d..bdb22bbc 100755 --- a/plugin.video.alfa/servers/mediafire.py +++ b/plugin.video.alfa/servers/mediafire.py @@ -9,26 +9,21 @@ from platformcode import logger def test_video_exists(page_url): logger.info("(page_url='%s')" % page_url) data = httptools.downloadpage(page_url).data - if "Invalid or Deleted File" in data: return False, "[Mediafire] El archivo no existe o ha sido borrado" elif "File Removed for Violation" in data: return False, "[Mediafire] Archivo eliminado por infracción" - return True, "" def get_video_url(page_url, premium=False, user="", password="", video_password=""): logger.info("(page_url='%s')" % page_url) video_urls = [] - data = httptools.downloadpage(page_url).data - patron = 'kNO \= "([^"]+)"' + patron = "DownloadButtonAd-startDownload gbtnSecondary.*?href='([^']+)'" matches = re.compile(patron, re.DOTALL).findall(data) if len(matches) > 0: video_urls.append([matches[0][-4:] + " [mediafire]", matches[0]]) - for video_url in video_urls: logger.info("%s - %s" % (video_url[0], video_url[1])) - return video_urls diff --git a/plugin.video.alfa/servers/mp4upload.json b/plugin.video.alfa/servers/mp4upload.json index b3d68c38..d46b4135 100755 --- a/plugin.video.alfa/servers/mp4upload.json +++ b/plugin.video.alfa/servers/mp4upload.json @@ -6,7 +6,7 @@ ], "patterns": [ { - "pattern": "mp4upload.com/embed-([A-Za-z0-9]+)", + "pattern": "mp4upload.com(?:/embed-|/)([A-Za-z0-9]+)", "url": "http://www.mp4upload.com/embed-\\1.html" } ] diff --git a/plugin.video.alfa/servers/vevio.json b/plugin.video.alfa/servers/vevio.json index d91e95bf..9a5d5600 100644 --- a/plugin.video.alfa/servers/vevio.json +++ b/plugin.video.alfa/servers/vevio.json @@ -4,8 +4,8 @@ "ignore_urls": [], "patterns": [ { - "pattern": "(vev.io/embed/[A-z0-9]+)", - "url": "https://\\1" + "pattern": "vev.io/(?:embed/|)([A-z0-9]+)", + "url": "https://vev.io/embed/\\1" } ] },