diff --git a/plugin.video.alfa/addon.xml b/plugin.video.alfa/addon.xml index 2ec2d4fe..e8bda9ea 100755 --- a/plugin.video.alfa/addon.xml +++ b/plugin.video.alfa/addon.xml @@ -1,5 +1,5 @@ - + @@ -10,8 +10,8 @@ Navega con Kodi por páginas web. - logo-n.jpg - fanart-xmas.jpg + logo-cumple.png + fanart1.jpg resources/media/themes/ss/1.jpg resources/media/themes/ss/2.jpg resources/media/themes/ss/3.jpg @@ -19,16 +19,12 @@ [B]Estos son los cambios para esta versión:[/B] [COLOR green][B]Arreglos[/B][/COLOR] - ¤ allcalidad ¤ asialiveaction ¤ repelis - ¤ DoramasMP4 ¤ CanalPelis ¤ Vi2 - ¤ PeliculonHD ¤ PeliculasHD ¤ UltraPeliculasHD - ¤ Newpct1 ¤ maxipelis24 ¤ repelis.live - ¤ cuevana2 ¤ cuevana2espanol - - [COLOR green][B]Novedades[/B][/COLOR] - ¤ pack +18 - - ¤ Agradecimientos a @mrgaturus, @GeorgeRamga y @chivmalev por colaborar con ésta versión + ¤ Grantorrent ¤ Zonatorrent ¤ pack +18 + ¤ erotik ¤ pelis24 ¤ cineasiaenlinea + ¤ pelisgratis ¤ repelis ¤ descargacineclasico + ¤ Goovie ¤ PelisFox ¤ PelisPlus + ¤ TvSeriesDk ¤ UqLoad ¤ Vi2 + ¤ gnula.biz Navega con Kodi por páginas web para ver sus videos de manera fácil. diff --git a/plugin.video.alfa/channels/TXXX.py b/plugin.video.alfa/channels/TXXX.py index 976d1d4c..3ade3fb3 100644 --- a/plugin.video.alfa/channels/TXXX.py +++ b/plugin.video.alfa/channels/TXXX.py @@ -50,11 +50,13 @@ def catalogo(item): scrapedplot = "" scrapedurl = host + scrapedurl title = scrapedtitle + "[COLOR yellow] " + num + "[/COLOR]" - itemlist.append( Item(channel=item.channel, action="peliculas", title=title , url=scrapedurl , thumbnail=scrapedthumbnail , plot=scrapedplot , folder=True) ) + itemlist.append( Item(channel=item.channel, action="peliculas", title=title , url=scrapedurl , + thumbnail=scrapedthumbnail , plot=scrapedplot , folder=True) ) next_page_url = scrapertools.find_single_match(data,'", "", data) - patron = 'data-video-id="\d+">.*?(.*?)' + patron = 'data-video-id="\d+">.*?|
", "", data) patron = '
\d+ (.*?)") - data_unwise = jswise(js_wise).replace("\\", "") - at = scrapertools.find_single_match(data_unwise, 'at=(\w+)') - http_referer = scrapertools.find_single_match(data_unwise, 'http_referer=(.*?)&') - url = "http://hqq.watch/sec/player/embed_player.php?iss=&vid=%s&at=%s&autoplayed=yes&referer=on" \ - "&http_referer=%s&pass=&embed_from=&need_captcha=0&hash_from=" % (id_video, at, http_referer) - data_player = httptools.downloadpage(url, add_referer=True).data - data_unescape = scrapertools.find_multiple_matches(data_player, 'document.write\(unescape\("([^"]+)"') - data = "" - for d in data_unescape: - data += urllib.unquote(d) - subtitle = scrapertools.find_single_match(data, 'value="sublangs=Spanish.*?sub=([^&]+)&') - if not subtitle: - subtitle = scrapertools.find_single_match(data, 'value="sublangs=English.*?sub=([^&]+)&') - data_unwise_player = "" - js_wise = scrapertools.find_single_match(data_player, - "") - if js_wise: - data_unwise_player = jswise(js_wise).replace("\\", "") - vars_data = scrapertools.find_single_match(data, '/player/get_md5.php",\s*\{(.*?)\}') - matches = scrapertools.find_multiple_matches(vars_data, '\s*([^:]+):\s*([^,]*)[,"]') - params = {} - for key, value in matches: - if key == "adb": - params[key] = "0/" - elif '"' in value: - params[key] = value.replace('"', '') - else: - value_var = scrapertools.find_single_match(data, 'var\s*%s\s*=\s*"([^"]+)"' % value) - if not value_var and data_unwise_player: - value_var = scrapertools.find_single_match(data_unwise_player, 'var\s*%s\s*=\s*"([^"]+)"' % value) - params[key] = value_var - params = urllib.urlencode(params) - head = {'X-Requested-With': 'XMLHttpRequest', 'Referer': url} - data = httptools.downloadpage("http://hqq.watch/player/get_md5.php?" + params, headers=head).data - media_urls = [] - url_data = jsontools.load(data) - media_url = tb(url_data["obf_link"].replace("#", "")) + ".mp4.m3u8" - if not media_url.startswith("http"): - media_url = "https:" + media_url - video_urls = [] - media = media_url + "|User-Agent=Mozilla/5.0 (iPhone; CPU iPhone OS 5_0_1 like Mac OS X)" - video_urls.append([scrapertools.get_filename_from_url(media_url)[-4:] + " [netu.tv]", media, 0, subtitle]) - for video_url in video_urls: - logger.info("%s - %s" % (video_url[0], video_url[1])) + page_url = page_url.replace("/watch_video.php?v=", "/player/embed_player.php?vid=") + + page_url = page_url.replace('https://netu.tv/', 'http://hqq.watch/') + page_url = page_url.replace('https://waaw.tv/', 'http://hqq.watch/') + + data = httptools.downloadpage(page_url).data + # ~ logger.debug(data) + + js_wise = scrapertools.find_single_match(data, "") + data = jswise(js_wise).replace("\\", "") + # ~ logger.debug(data) + + alea = str(random.random())[2:] + data_ip = httptools.downloadpage('http://hqq.watch/player/ip.php?type=json&rand=%s' % alea).data + # ~ logger.debug(data_ip) + json_data_ip = jsontools.load(data_ip) + + url = scrapertools.find_single_match(data, 'self\.location\.replace\("([^)]+)\)') + url = url.replace('"+rand+"', alea) + url = url.replace('"+data.ip+"', json_data_ip['ip']) + url = url.replace('"+need_captcha+"', '0') #json_data_ip['need_captcha']) + url = url.replace('"+token', '') + # ~ logger.debug(url) + + headers = { "User-Agent": 'Mozilla/5.0 (X11; U; Linux i686; en-US) AppleWebKit/533.4 (KHTML, like Gecko) Chrome/5.0.375.127 Large Screen Safari/533.4 GoogleTV/162671' } + data = httptools.downloadpage('http://hqq.watch'+url, headers=headers).data + # ~ logger.debug(data) + + codigo_js = scrapertools.find_multiple_matches(data, '") + data = jswise(js_wise).replace("\\", "") + # ~ logger.debug(data) + + variables = scrapertools.find_multiple_matches(data, 'var ([a-zA-Z0-9]+) = "([^"]+)";') + # ~ logger.debug(variables) + + for nombre, valor in variables: + # ~ logger.debug('%s %s' % (nombre, valor)) + if nombre == var_link_1: link_1 = valor + if nombre == var_server_2: server_2 = valor + + link_m3u8 = 'http://hqq.watch/player/get_md5.php?ver=2&at=%s&adb=0&b=1&link_1=%s&server_2=%s&vid=%s&ext=%s' % (at, link_1, server_2, vid, ext) + # ~ logger.debug(link_m3u8) + + video_urls.append(["[netu.tv]", link_m3u8]) + return video_urls -## Obtener la url del m3u8 -def tb(b_m3u8_2): - j = 0 - s2 = "" - while j < len(b_m3u8_2): - s2 += "\\u0" + b_m3u8_2[j:(j + 3)] - j += 3 - return s2.decode('unicode-escape').encode('ASCII', 'ignore') - - ## -------------------------------------------------------------------------------- ## -------------------------------------------------------------------------------- diff --git a/plugin.video.alfa/servers/uqload.json b/plugin.video.alfa/servers/uqload.json new file mode 100644 index 00000000..600c0b58 --- /dev/null +++ b/plugin.video.alfa/servers/uqload.json @@ -0,0 +1,42 @@ +{ + "active": true, + "find_videos": { + "ignore_urls": [], + "patterns": [ + { + "pattern": "https://uqload.com/embed-([a-z0-9]+).html", + "url": "https://uqload.com/embed-\\1.html" + } + ] + }, + "free": true, + "id": "uqload", + "name": "uqload", + "settings": [ + { + "default": false, + "enabled": true, + "id": "black_list", + "label": "@60654", + "type": "bool", + "visible": true + }, + { + "default": 0, + "enabled": true, + "id": "favorites_servers_list", + "label": "@60655", + "lvalues": [ + "No", + "1", + "2", + "3", + "4", + "5" + ], + "type": "list", + "visible": false + } + ], + "thumbnail": "https://uqload.com/img/logo.png?v=0" +} \ No newline at end of file diff --git a/plugin.video.alfa/servers/uqload.py b/plugin.video.alfa/servers/uqload.py new file mode 100644 index 00000000..fed3bf31 --- /dev/null +++ b/plugin.video.alfa/servers/uqload.py @@ -0,0 +1,34 @@ +# -*- coding: utf-8 -*- +# -------------------------------------------------------- +# Conector Uqload By Alfa development Group +# -------------------------------------------------------- + +import re +from core import httptools +from platformcode import logger + + +def test_video_exists(page_url): + logger.info("(page_url='%s')" % page_url) + + data = httptools.downloadpage(page_url) + + if data.code == 404: + return False, "[Uqload] El archivo no existe o ha sido borrado" + + return True, "" + + +def get_video_url(page_url, premium=False, user="", password="", video_password=""): + logger.info("url=" + page_url) + + video_urls = [] + data = httptools.downloadpage(page_url).data + data = re.sub(r'\n|\r|\t| |
|\s{2,}', "", data) + patron = 'sources:.?\["([^"]+)"\]' + matches = re.compile(patron, re.DOTALL).findall(data) + + for url in matches: + video_urls.append(["[uqload]", url]) + + return video_urls