From 0c891a375385a69d05dddd1403a03049d5feaf3a Mon Sep 17 00:00:00 2001 From: Intel1 <25161862+Intel11@users.noreply.github.com> Date: Sat, 17 Feb 2018 12:01:15 -0500 Subject: [PATCH 01/28] youtube: fix --- plugin.video.alfa/servers/youtube.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugin.video.alfa/servers/youtube.py b/plugin.video.alfa/servers/youtube.py index 989cfde6..5a398635 100755 --- a/plugin.video.alfa/servers/youtube.py +++ b/plugin.video.alfa/servers/youtube.py @@ -17,7 +17,7 @@ def get_video_url(page_url, premium=False, user="", password="", video_password= page_url = "http://www.youtube.com/watch?v=%s" % page_url logger.info(" page_url->'%s'" % page_url) - video_id = scrapertools.find_single_match(page_url, 'v=([A-z0-9_-]{11})') + video_id = scrapertools.find_single_match(page_url, '(?:v=|embed/)([A-z0-9_-]{11})') video_urls = extract_videos(video_id) video_urls.reverse() From 82fe2b67c9ffdbc58c920691f32d596e876c8e0a Mon Sep 17 00:00:00 2001 From: Intel1 <25161862+Intel11@users.noreply.github.com> Date: Mon, 19 Feb 2018 11:34:27 -0500 Subject: [PATCH 02/28] flashx: fix --- plugin.video.alfa/servers/flashx.py | 32 +++++++++++------------------ 1 file changed, 12 insertions(+), 20 deletions(-) diff --git a/plugin.video.alfa/servers/flashx.py b/plugin.video.alfa/servers/flashx.py index 6c33cac0..6efb18d0 100644 --- a/plugin.video.alfa/servers/flashx.py +++ b/plugin.video.alfa/servers/flashx.py @@ -13,21 +13,13 @@ from platformcode import config, logger def test_video_exists(page_url): logger.info("(page_url='%s')" % page_url) - data = httptools.downloadpage(page_url, cookies=False).data - if 'file was deleted' in data: - return False, "[FlashX] El archivo no existe o ha sido borrado" - elif 'File Not Found' in data: - return False, "[FlashX] El archivo no existe" - elif 'Video is processing now' in data: - return False, "[FlashX] El archivo se está procesando" - return True, "" def get_video_url(page_url, premium=False, user="", password="", video_password=""): logger.info("url=" + page_url) pfxfx = "" - headers = {'Host': 'www.flashx.tv', + headers = {'Host': 'www.flashx.sx', 'User-Agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/34.0.1847.137 Safari/537.36', 'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 'Accept-Language': 'en-US,en;q=0.5', @@ -35,11 +27,11 @@ def get_video_url(page_url, premium=False, user="", password="", video_password= 'Cookie': ''} data = httptools.downloadpage(page_url, cookies=False).data data = data.replace("\n","") - cgi_counter = scrapertools.find_single_match(data, """(?is)src=.(https://www.flashx.tv/counter.cgi.*?[^(?:'|")]+)""") + cgi_counter = scrapertools.find_single_match(data, """(?is)src=.(https://www.flashx.sx/counter.cgi.*?[^(?:'|")]+)""") cgi_counter = cgi_counter.replace("%0A","").replace("%22","") - playnow = scrapertools.find_single_match(data, 'https://www.flashx.tv/dl[^"]+') + playnow = scrapertools.find_single_match(data, 'https://www.flashx.sx/dl[^"]+') # Para obtener el f y el fxfx - js_fxfx = "https://www." + scrapertools.find_single_match(data.replace("//","/"), """(?is)(flashx.tv/js\w+/c\w+.*?[^(?:'|")]+)""") + js_fxfx = "https://www." + scrapertools.find_single_match(data.replace("//","/"), """(?is)(flashx.sx/js\w+/c\w+.*?[^(?:'|")]+)""") data_fxfx = httptools.downloadpage(js_fxfx).data mfxfx = scrapertools.find_single_match(data_fxfx, 'get.*?({.*?})').replace("'","").replace(" ","") matches = scrapertools.find_multiple_matches(mfxfx, '(\w+):(\w+)') @@ -49,19 +41,20 @@ def get_video_url(page_url, premium=False, user="", password="", video_password= logger.info("mfxfxfx2= %s" %pfxfx) if pfxfx == "": pfxfx = "ss=yes&f=fail&fxfx=6" - coding_url = 'https://www.flashx.tv/flashx.php?%s' %pfxfx + coding_url = 'https://www.flashx.sx/flashx.php?%s' %pfxfx # {f: 'y', fxfx: '6'} - flashx_id = scrapertools.find_single_match(data, 'name="id" value="([^"]+)"') - fname = scrapertools.find_single_match(data, 'name="fname" value="([^"]+)"') - hash_f = scrapertools.find_single_match(data, 'name="hash" value="([^"]+)"') - imhuman = scrapertools.find_single_match(data, "value='([^']+)' name='imhuman'") + bloque = scrapertools.find_single_match(data, '(?s)Form method="POST" action(.*?) "7.1" + @param _rating: valor del rating + @type _rating: float + @return: devuelve el valor modificado si es correcto, si no devuelve None + @rtype: float|None + """ + # logger.debug("rating %s" % _rating) + + try: + # convertimos los deciamles p.e. 7.1 + return "%.1f" % round(_rating, 1) + except Exception, ex_dl: + template = "An exception of type %s occured. Arguments:\n%r" + message = template % (type(ex_dl).__name__, ex_dl.args) + logger.error(message) + return None + + def check_range(_rating): + """ + Comprobamos que el rango de rating sea entre 0.0 y 10.0 + @param _rating: valor del rating + @type _rating: float + @return: devuelve el valor si está dentro del rango, si no devuelve None + @rtype: float|None + """ + # logger.debug("rating %s" % _rating) + # fix para comparacion float + dec = Decimal(_rating) + if 0.0 <= dec <= 10.0: + # logger.debug("estoy en el rango!") + return _rating + else: + # logger.debug("NOOO estoy en el rango!") + return None + + def convert_float(_rating): + try: + return float(_rating) + except ValueError, ex_ve: + template = "An exception of type %s occured. Arguments:\n%r" + message = template % (type(ex_ve).__name__, ex_ve.args) + logger.error(message) + return None + + if type(rating) != float: + # logger.debug("no soy float") + if type(rating) == int: + # logger.debug("soy int") + rating = convert_float(rating) + elif type(rating) == str: + # logger.debug("soy str") + + rating = rating.replace("<", "") + rating = convert_float(rating) + + if rating is None: + # logger.debug("error al convertir str, rating no es un float") + # obtenemos los valores de numericos + new_rating = scrapertools.find_single_match(rating, "(\d+)[,|:](\d+)") + if len(new_rating) > 0: + rating = convert_float("%s.%s" % (new_rating[0], new_rating[1])) + + else: + logger.error("no se que soy!!") + # obtenemos un valor desconocido no devolvemos nada + return None + + if rating: + rating = check_decimal_length(rating) + rating = check_range(rating) + + return rating diff --git a/plugin.video.alfa/resources/settings.xml b/plugin.video.alfa/resources/settings.xml index 588682e8..950bf63b 100644 --- a/plugin.video.alfa/resources/settings.xml +++ b/plugin.video.alfa/resources/settings.xml @@ -51,6 +51,58 @@ + + + + + + + + + + + + + + + + + + + + From 96ee127c5d0c1fd942d59f241ab13690091fd39d Mon Sep 17 00:00:00 2001 From: danielr460 Date: Fri, 23 Feb 2018 12:37:46 -0500 Subject: [PATCH 17/28] =?UTF-8?q?Newpct:=20Renovado=20primera=20versi?= =?UTF-8?q?=C3=B3n?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- plugin.video.alfa/channels/newpct.py | 373 ++++----------------------- 1 file changed, 55 insertions(+), 318 deletions(-) diff --git a/plugin.video.alfa/channels/newpct.py b/plugin.video.alfa/channels/newpct.py index ce64bdb5..4e8f36c7 100755 --- a/plugin.video.alfa/channels/newpct.py +++ b/plugin.video.alfa/channels/newpct.py @@ -7,346 +7,83 @@ import urlparse from core import scrapertools from core.item import Item from platformcode import logger +from core import httptools + +Host='http://www.tvsinpagar.com' def mainlist(item): logger.info() itemlist = [] - itemlist.append(Item(channel=item.channel, action="submenu", title="Películas")) - itemlist.append(Item(channel=item.channel, action="submenu", title="Series")) - itemlist.append(Item(channel=item.channel, action="listado", title="Anime", url="http://www.newpct.com/anime/", - viewmode="movie_with_plot")) - itemlist.append( - Item(channel=item.channel, action="listado", title="Documentales", url="http://www.newpct.com/documentales/", - viewmode="movie_with_plot")) - itemlist.append(Item(channel=item.channel, action="search", title="Buscar")) - + itemlist.append(Item(channel=item.channel, action="submenu", title="Películas",url=Host+"/peliculas/")) + itemlist.append(Item(channel=item.channel, action="submenu", title="Series",url=Host+"/series/")) + #itemlist.append(Item(channel=item.channel, action="listado", title="Anime", url=Host+"/anime/", + # viewmode="movie_with_plot")) + #itemlist.append( + # Item(channel=item.channel, action="listado", title="Documentales", url=Host+"/documentales/", + # viewmode="movie_with_plot")) + #itemlist.append(Item(channel=item.channel, action="search", title="Buscar")) return itemlist - -def search(item, texto): - logger.info() - texto = texto.replace(" ", "+") - - item.url = "http://www.newpct.com/buscar-descargas/%s" % (texto) - try: - return buscador(item) - # Se captura la excepciÛn, para no interrumpir al buscador global si un canal falla - except: - import sys - for line in sys.exc_info(): - logger.error("%s" % line) - return [] - - -def buscador(item): - logger.info() - itemlist = [] - - # Descarga la página - data = scrapertools.cache_page(item.url) - data = re.sub(r"\n|\r|\t|\s{2}| ", "", data) - - # 14-09-14 Malefica 3D SBS [BluRay 1080p][DTS 5.1-AC3 5.1 Castellano DTS 5.1-Ingles+Subs][ES-EN]10.9 GB([^<]+).*?' # info - patron += '' # title - patron += '(.+?)<\/ul>' #Filtrado por url + data_cat = scrapertools.find_single_match(data, patron) + patron_cat='<\/li>' + matches = scrapertools.find_multiple_matches(data_cat, patron_cat) + for scrapedurl, scrapedtitle in matches: + itemlist.append(item.clone(title=scrapedtitle, url=scrapedurl,action="listado")) return itemlist def listado(item): logger.info() itemlist = [] - data = scrapertools.cache_page(item.url) - - ''' - - - - - - La Pequeña Venecia - Peliculas Castellano - Calidad: DVDRIP AC3 5.1 - Tamaño: 1.1 GB - Idioma : Español Castellano - - - - - - - - - - DESCARGAR - - - ''' - patron = "([^<]+)(.*?)' - - matches = re.compile(patron, re.DOTALL).findall(data) - - for scrapedurl, scrapedthumbnail, scrapedtitle, scrapedplot in matches: - title = scrapedtitle.strip() - title = unicode(title, "iso-8859-1", errors="replace").encode("utf-8") - - url = urlparse.urljoin(item.url, scrapedurl) - thumbnail = urlparse.urljoin(item.url, scrapedthumbnail) - plot = scrapertools.htmlclean(scrapedplot).strip() - plot = unicode(plot, "iso-8859-1", errors="replace").encode("utf-8") - - logger.debug("title=[" + title + "], url=[" + url + "], thumbnail=[" + thumbnail + "]") - if item.category == "serie": - itemlist.append( - Item(channel=item.channel, action="episodios", title=title, url=url, thumbnail=thumbnail, plot=plot)) - else: - itemlist.append( - Item(channel=item.channel, action="findvideos", title=title, url=url, thumbnail=thumbnail, plot=plot, - contentTitle=title)) + data = httptools.downloadpage(item.url).data + data = re.sub(r"\n|\r|\t|\s{2}| ", "", data) + patron_data='(.+?)' + data_listado = scrapertools.find_single_match(data, patron_data) + logger.info("sadas"+data_listado) + patron_listado='' + else: + patron_listado+='>' + patron_listado+='(.+?)<\/h2>(.+?)<\/span><\/a><\/li>' + logger.info("sasssss"+patron_listado) + matches = scrapertools.find_multiple_matches(data_listado, patron_listado) + for scrapedurl, scrapedthumbnail,scrapedtitle,scrapedquality in matches: + if 'Serie' in item.title: + action="episodios" + else: + action="findvideos" + itemlist.append(item.clone(title=scrapedtitle, url=scrapedurl,thumbnail=scrapedthumbnail, action=action, quality=scrapedquality,show=scrapedtitle)) # Página siguiente - ''' - GET /include.inc/ajax.php/orderCategory.php?type=todo&leter=&sql=SELECT+DISTINCT+++%09%09%09%09%09%09torrentID%2C+++%09%09%09%09%09%09torrentCategoryID%2C+++%09%09%09%09%09%09torrentCategoryIDR%2C+++%09%09%09%09%09%09torrentImageID%2C+++%09%09%09%09%09%09torrentName%2C+++%09%09%09%09%09%09guid%2C+++%09%09%09%09%09%09torrentShortName%2C++%09%09%09%09%09%09torrentLanguage%2C++%09%09%09%09%09%09torrentSize%2C++%09%09%09%09%09%09calidad+as+calidad_%2C++%09%09%09%09%09%09torrentDescription%2C++%09%09%09%09%09%09torrentViews%2C++%09%09%09%09%09%09rating%2C++%09%09%09%09%09%09n_votos%2C++%09%09%09%09%09%09vistas_hoy%2C++%09%09%09%09%09%09vistas_ayer%2C++%09%09%09%09%09%09vistas_semana%2C++%09%09%09%09%09%09vistas_mes++%09%09%09%09++FROM+torrentsFiles+as+t+WHERE++(torrentStatus+%3D+1+OR+torrentStatus+%3D+2)++AND+(torrentCategoryID+IN+(1537%2C+758%2C+1105%2C+760%2C+1225))++++ORDER+BY+torrentDateAdded++DESC++LIMIT+0%2C+50&pag=3&tot=&ban=3&cate=1225 HTTP/1.1 - Host: www.newpct.com - User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:19.0) Gecko/20100101 Firefox/19.0 - Accept: */* - Accept-Language: es-ES,es;q=0.8,en-US;q=0.5,en;q=0.3 - Accept-Encoding: gzip, deflate - X-Requested-With: XMLHttpRequest - Referer: http://www.newpct.com/peliculas-castellano/peliculas-rip/ - Cookie: adbooth_popunder=5%7CSat%2C%2009%20Mar%202013%2018%3A23%3A22%20GMT - Connection: keep-alive - ''' - - ''' - function orderCategory(type,leter,pag,other) - { - - - if(leter=='buscar') - { - leter = document.getElementById('word').value; - } - if(type=='todo') - { - document.getElementById('todo').className = "active_todo"; - } - if(type=='letter') - { - switch(leter) - { - case '09': - document.getElementById('09').className = "active_num"; - break; - default: - document.getElementById(leter).className = "active_a"; - break; - } - } - - var parametros = { - "type" : type, - "leter" : leter, - "sql" : "SELECT DISTINCT torrentID, torrentCategoryID, torrentCategoryIDR, torrentImageID, torrentName, guid, torrentShortName, torrentLanguage, torrentSize, calidad as calidad_, torrentDescription, torrentViews, rating, n_votos, vistas_hoy, vistas_ayer, vistas_semana, vistas_mes FROM torrentsFiles as t WHERE (torrentStatus = 1 OR torrentStatus = 2) AND (torrentCategoryID IN (1537, 758, 1105, 760, 1225)) ORDER BY torrentDateAdded DESC LIMIT 0, 50", - "pag" : pag, - "tot" : '', - "ban" : '3', - "other": other, - "cate" : '1225' - - }; - //alert(type+leter); - - $('#content-category').html(''); - var page = $(this).attr('data'); - var dataString = 'page='+page; - - $.ajax({ - type: "GET", - url: 'http://www.newpct.com/include.inc/ajax.php/orderCategory.php', - data: parametros, - success: function(data) { - - //Cargamos finalmente el contenido deseado - $('#content-category').fadeIn(1000).html(data); - } - }); - - } - ''' - if item.extra != "": - bloque = item.extra - else: - bloque = scrapertools.get_match(data, "function orderCategory(.*?)\}\)\;") - logger.info("bloque=" + bloque) - param_type = scrapertools.get_match(data, "]+> >> ") - logger.info("param_type=" + param_type) - param_leter = scrapertools.get_match(data, - "]+> >> ") - logger.info("param_leter=" + param_leter) - param_pag = scrapertools.get_match(data, - "]+> >> ") - logger.info("param_pag=" + param_pag) - param_total = scrapertools.get_match(bloque, '"total"\s*\:\s*\'([^\']+)') - logger.info("param_sql=" + param_total) - param_sql = scrapertools.get_match(bloque, '"sql"\s*\:\s*\'([^\']+)') - logger.info("param_sql=" + param_sql) - param_tot = scrapertools.get_match(bloque, "\"tot\"\s*\:\s*'([^']*)'") - logger.info("param_tot=" + param_tot) - param_ban = scrapertools.get_match(bloque, "\"ban\"\s*\:\s*'([^']+)'") - logger.info("param_ban=" + param_ban) - param_cate = scrapertools.get_match(bloque, "\"cate\"\s*\:\s*'([^']+)'") - logger.info("param_cate=" + param_cate) - base_url = scrapertools.get_match(bloque, "url\s*\:\s*'([^']+)'") - base_url = re.sub("../..", "http://www.newpct.com", base_url, count=1) - logger.info("base_url=" + base_url) - # http://www.newpct.com/include.inc/ajax.php/orderCategory.php?type=todo&leter=&sql=SELECT+DISTINCT+++%09%09%09%09%09%09torrentID%2C+++%09%09%09%09%09%09torrentCategoryID%2C+++%09%09%09%09%09%09torrentCategoryIDR%2C+++%09%09%09%09%09%09torrentImageID%2C+++%09%09%09%09%09%09torrentName%2C+++%09%09%09%09%09%09guid%2C+++%09%09%09%09%09%09torrentShortName%2C++%09%09%09%09%09%09torrentLanguage%2C++%09%09%09%09%09%09torrentSize%2C++%09%09%09%09%09%09calidad+as+calidad_%2C++%09%09%09%09%09%09torrentDescription%2C++%09%09%09%09%09%09torrentViews%2C++%09%09%09%09%09%09rating%2C++%09%09%09%09%09%09n_votos%2C++%09%09%09%09%09%09vistas_hoy%2C++%09%09%09%09%09%09vistas_ayer%2C++%09%09%09%09%09%09vistas_semana%2C++%09%09%09%09%09%09vistas_mes++%09%09%09%09++FROM+torrentsFiles+as+t+WHERE++(torrentStatus+%3D+1+OR+torrentStatus+%3D+2)++AND+(torrentCategoryID+IN+(1537%2C+758%2C+1105%2C+760%2C+1225))++++ORDER+BY+torrentDateAdded++DESC++LIMIT+0%2C+50&pag=3&tot=&ban=3&cate=1225 - url_next_page = base_url + "?" + urllib.urlencode( - {"total": param_total, "type": param_type, "leter": param_leter, "sql": param_sql, "pag": param_pag, - "tot": param_tot, "ban": param_ban, "cate": param_cate}) - logger.info("url_next_page=" + url_next_page) - if item.category == "serie": - itemlist.append( - Item(channel=item.channel, action="listado", title=">> Página siguiente", url=url_next_page, extra=bloque, - category="serie", viewmode="movie_with_plot")) - else: - itemlist.append( - Item(channel=item.channel, action="listado", title=">> Página siguiente", url=url_next_page, extra=bloque, - viewmode="movie_with_plot")) - + patron_pag='.+?<\/a>.+?' + siguiente = scrapertools.find_single_match(data, patron_pag) + itemlist.append( + Item(channel=item.channel, title="[COLOR cyan]Página Siguiente >>[/COLOR]", url=siguiente, action="listado")) return itemlist - -def series(item): - logger.info() - itemlist = [] - # Lista menú Series de la A-Z - data = scrapertools.cache_page(item.url) - patron = '(.*?)<\/div>' - data = re.compile(patron, re.DOTALL | re.M).findall(data) - patron = 'id="([^"]+)".*?>([^"]+)<\/a>' - matches = re.compile(patron, re.DOTALL | re.M).findall(data[0]) - for id, scrapedtitle in matches: - url_base = "http://www.newpct.com/include.inc/ajax.php/orderCategory.php?total=9&type=letter&leter=%s&sql=+%09%09SELECT++t.torrentID%2C++%09%09%09%09t.torrentCategoryID%2C++%09%09%09%09t.torrentCategoryIDR%2C++%09%09%09%09t.torrentImageID%2C++%09%09%09%09t.torrentName%2C++%09%09%09%09t.guid%2C++%09%09%09%09t.torrentShortName%2C+%09%09%09%09t.torrentLanguage%2C+%09%09%09%09t.torrentSize%2C+%09%09%09%09t.calidad+as+calidad_%2C+%09%09%09%09t.torrentDescription%2C+%09%09%09%09t.torrentViews%2C+%09%09%09%09t.rating%2C+%09%09%09%09t.n_votos%2C+%09%09%09%09t.vistas_hoy%2C+%09%09%09%09t.vistas_ayer%2C+%09%09%09%09t.vistas_semana%2C+%09%09%09%09t.vistas_mes%2C+%09%09%09%09t.imagen+FROM+torrentsFiles+as+t++%09%09LEFT+JOIN+torrentsCategories+as+tc+ON+(t.torrentCategoryID+%3D+tc.categoryID)++%09%09INNER+JOIN++%09%09(+%09%09%09SELECT+torrentID+%09%09%09FROM+torrentsFiles++%09%09%09WHERE++torrentCategoryIDR+%3D+1469+%09%09%09ORDER+BY+torrentID+DESC+%09%09)t1+ON+t1.torrentID+%3D+t.torrentID+WHERE+(t.torrentStatus+%3D+1+OR+t.torrentStatus+%3D+2)+AND+t.home_active+%3D+0++AND+tc.categoryIDR+%3D+1469+GROUP+BY+t.torrentCategoryID+ORDER+BY+t.torrentID+DESC+LIMIT+0%2C+50&pag=&tot=&ban=3&cate=1469" - scrapedurl = url_base.replace("%s", id) - if id != "todo": itemlist.append( - Item(channel=item.channel, action="listaseries", title=scrapedtitle, url=scrapedurl, folder=True)) - - return itemlist - - -def listaseries(item): - logger.info() - itemlist = [] - - data = scrapertools.downloadpageGzip(item.url) - patron = ".*?([^']+)<\/h3>" - matches = re.compile(patron, re.DOTALL | re.M).findall(data) - for scrapedurl, scrapedthumbnail, scrapedtitle in matches: - itemlist.append(Item(channel=item.channel, action="episodios", title=scrapedtitle, url=scrapedurl, - thumbnail=scrapedthumbnail, folder=True)) - return itemlist - - def episodios(item): logger.info() itemlist = [] - - data = scrapertools.cache_page(item.url) - patron = "(.*?)<\/ul>" - data = re.compile(patron, re.DOTALL | re.M).findall(data) - patron = " - torrent_url = scrapertools.find_single_match(data, " Date: Fri, 23 Feb 2018 12:47:55 -0500 Subject: [PATCH 18/28] Newpct1 --- plugin.video.alfa/channels/newpct1.py | 493 +++----------------------- 1 file changed, 56 insertions(+), 437 deletions(-) diff --git a/plugin.video.alfa/channels/newpct1.py b/plugin.video.alfa/channels/newpct1.py index 22b39433..84a69863 100644 --- a/plugin.video.alfa/channels/newpct1.py +++ b/plugin.video.alfa/channels/newpct1.py @@ -1,470 +1,89 @@ # -*- coding: utf-8 -*- import re +import urllib +import urlparse -from channelselector import get_thumb -from core import httptools from core import scrapertools -from core import servertools from core.item import Item -from platformcode import config, logger -from core import tmdb +from platformcode import logger +from core import httptools + +Host='http://descargas2020.com' -host = 'http://newpct1.com/' def mainlist(item): logger.info() itemlist = [] - - thumb_pelis=get_thumb("channels_movie.png") - thumb_series=get_thumb("channels_tvshow.png") - thumb_search = get_thumb("search.png") - - itemlist.append(Item(channel=item.channel, action="submenu", title="Películas", url=host, - extra="peliculas", thumbnail=thumb_pelis )) - - itemlist.append(Item(channel=item.channel, action="submenu", title="Series", url=host, extra="series", - thumbnail=thumb_series)) - itemlist.append( - Item(channel=item.channel, action="search", title="Buscar", url=host + "buscar", thumbnail=thumb_search)) - + itemlist.append(Item(channel=item.channel, action="submenu", title="Películas",url=Host+"/peliculas/")) + itemlist.append(Item(channel=item.channel, action="submenu", title="Series",url=Host+"/series/")) + #itemlist.append(Item(channel=item.channel, action="listado", title="Anime", url=Host+"/anime/", + # viewmode="movie_with_plot")) + #itemlist.append( + # Item(channel=item.channel, action="listado", title="Documentales", url=Host+"/documentales/", + # viewmode="movie_with_plot")) + #itemlist.append(Item(channel=item.channel, action="search", title="Buscar")) return itemlist def submenu(item): logger.info() itemlist = [] - data = re.sub(r"\n|\r|\t|\s{2}|()", "", httptools.downloadpage(item.url).data) - data = unicode(data, "iso-8859-1", errors="replace").encode("utf-8") - - patron = '.*?(.*?)' - data = scrapertools.get_match(data, patron) - - patron = '([^>]+)' - matches = re.compile(patron, re.DOTALL).findall(data) - + data = httptools.downloadpage(item.url).data + data = re.sub(r"\n|\r|\t|\s{2}| ", "", data) + patron = '(.+?)<\/ul>' #Filtrado por url + data_cat = scrapertools.find_single_match(data, patron) + patron_cat='<\/li>' + matches = scrapertools.find_multiple_matches(data_cat, patron_cat) for scrapedurl, scrapedtitle in matches: - title = scrapedtitle.strip() - url = scrapedurl - - itemlist.append(Item(channel=item.channel, action="listado", title=title, url=url, extra="pelilist")) - itemlist.append( - Item(channel=item.channel, action="alfabeto", title=title + " [A-Z]", url=url, extra="pelilist")) - - return itemlist - - -def alfabeto(item): - logger.info() - itemlist = [] - - data = re.sub(r"\n|\r|\t|\s{2}|()", "", httptools.downloadpage(item.url).data) - data = unicode(data, "iso-8859-1", errors="replace").encode("utf-8") - - patron = '(.*?)' - data = scrapertools.get_match(data, patron) - - patron = ']+>([^>]+)' - matches = re.compile(patron, re.DOTALL).findall(data) - - for scrapedurl, scrapedtitle in matches: - title = scrapedtitle.upper() - url = scrapedurl - - itemlist.append(Item(channel=item.channel, action="listado", title=title, url=url, extra=item.extra)) - + itemlist.append(item.clone(title=scrapedtitle, url=scrapedurl,action="listado")) return itemlist def listado(item): logger.info() itemlist = [] - url_next_page ='' - - data = re.sub(r"\n|\r|\t|\s{2}|()", "", httptools.downloadpage(item.url).data) - data = unicode(data, "iso-8859-1", errors="replace").encode("utf-8") - #logger.debug(data) - logger.debug('item.modo: %s'%item.modo) - logger.debug('item.extra: %s'%item.extra) - - if item.modo != 'next' or item.modo =='': - logger.debug('item.title: %s'% item.title) - patron = '(.*?)' - logger.debug("patron=" + patron) - fichas = scrapertools.get_match(data, patron) - page_extra = item.extra + data = httptools.downloadpage(item.url).data + data = re.sub(r"\n|\r|\t|\s{2}| ", "", data) + patron_data='(.+?)' + data_listado = scrapertools.find_single_match(data, patron_data) + logger.info("sadas"+data_listado) + patron_listado='' else: - fichas = data - page_extra = item.extra - - patron = ']+>.*?' # el thumbnail - patron += '([^<].*?)<' # la calidad - - matches = re.compile(patron, re.DOTALL).findall(fichas) - logger.debug('item.next_page: %s'%item.next_page) - - - # Paginacion - if item.next_page != 'b': - if len(matches) > 30: - url_next_page = item.url - matches = matches[:30] - next_page = 'b' - modo = 'continue' - else: - matches = matches[30:] - next_page = 'a' - patron_next_page = 'Next<\/a>' - matches_next_page = re.compile(patron_next_page, re.DOTALL).findall(data) - modo = 'continue' - if len(matches_next_page) > 0: - url_next_page = matches_next_page[0] - modo = 'next' - - for scrapedurl, scrapedtitle, scrapedthumbnail, calidad in matches: - url = scrapedurl - title = scrapedtitle - thumbnail = scrapedthumbnail - action = "findvideos" - extra = "" - year = scrapertools.find_single_match(scrapedthumbnail, r'-(\d{4})') - if "1.com/series" in url: - action = "episodios" - extra = "serie" - - - title = scrapertools.find_single_match(title, '([^-]+)') - title = title.replace("Ver online", "", 1).replace("Descarga Serie HD", "", 1).replace("Ver en linea", "", - 1).strip() + patron_listado+='>' + patron_listado+='(.+?)<\/h2>(.+?)<\/span><\/a><\/li>' + logger.info("sasssss"+patron_listado) + matches = scrapertools.find_multiple_matches(data_listado, patron_listado) + for scrapedurl, scrapedthumbnail,scrapedtitle,scrapedquality in matches: + if 'Serie' in item.title: + action="episodios" else: - title = title.replace("Descargar", "", 1).strip() - if title.endswith("gratis"): title = title[:-7] - - show = title - if item.extra != "buscar-list": - title = title + ' ' + calidad - - context = "" - context_title = scrapertools.find_single_match(url, "http://(?:www.)?newpct1.com/(.*?)/(.*?)/") - if context_title: - try: - context = context_title[0].replace("descargar-", "").replace("pelicula", "movie").replace("series", - "tvshow") - context_title = context_title[1].replace("-", " ") - if re.search('\d{4}', context_title[-4:]): - context_title = context_title[:-4] - elif re.search('\(\d{4}\)', context_title[-6:]): - context_title = context_title[:-6] - - except: - context_title = show - logger.debug('contxt title: %s'%context_title) - logger.debug('year: %s' % year) - - logger.debug('context: %s' % context) - if not 'array' in title: - itemlist.append(Item(channel=item.channel, action=action, title=title, url=url, thumbnail=thumbnail, - extra = extra, - show = context_title, contentTitle=context_title, contentType=context, - context=["buscar_trailer"], infoLabels= {'year':year})) - - tmdb.set_infoLabels(itemlist, True) - - - - if url_next_page: - itemlist.append(Item(channel=item.channel, action="listado", title=">> Página siguiente", - url=url_next_page, next_page=next_page, folder=True, - text_color='yellow', text_bold=True, modo = modo, plot = extra, - extra = page_extra)) + action="findvideos" + itemlist.append(item.clone(title=scrapedtitle, url=scrapedurl,thumbnail=scrapedthumbnail, action=action, quality=scrapedquality,show=scrapedtitle)) + # Página siguiente + patron_pag='.+?<\/a>.+?' + siguiente = scrapertools.find_single_match(data, patron_pag) + itemlist.append( + Item(channel=item.channel, title="[COLOR cyan]Página Siguiente >>[/COLOR]", url=siguiente, action="listado")) return itemlist -def listado2(item): - logger.info() - itemlist = [] - data = re.sub(r"\n|\r|\t|\s{2,}", "", httptools.downloadpage(item.url, post=item.post).data) - data = unicode(data, "iso-8859-1", errors="replace").encode("utf-8") - - list_chars = [["ñ", "ñ"]] - - for el in list_chars: - data = re.sub(r"%s" % el[0], el[1], data) - - try: - get, post = scrapertools.find_single_match(data, '.*?(.*?)<\/b><\/font>') - title = scrapertools.htmlclean(title) - title = title.replace("�", "ñ") - - # no mostramos lo que no sean videos - if "/juego/" in url or "/varios/" in url: - continue - - if ".com/series" in url: - - show = real_title - - itemlist.append(Item(channel=item.channel, action="episodios", title=title, url=url, thumbnail=thumb, - context=["buscar_trailer"], contentSerieName=show)) - else: - - itemlist.append(Item(channel=item.channel, action="findvideos", title=title, url=url, thumbnail=thumb, - context=["buscar_trailer"])) - - if post: - itemlist.append(item.clone(channel=item.channel, action="listado2", title=">> Página siguiente", - thumbnail=get_thumb("next.png"))) - - return itemlist - -def findvideos(item): - logger.info() - itemlist = [] - - ## Cualquiera de las tres opciones son válidas - # item.url = item.url.replace("1.com/","1.com/ver-online/") - # item.url = item.url.replace("1.com/","1.com/descarga-directa/") - item.url = item.url.replace("1.com/", "1.com/descarga-torrent/") - - # Descarga la página - data = re.sub(r"\n|\r|\t|\s{2}|()", "", httptools.downloadpage(item.url).data) - data = unicode(data, "iso-8859-1", errors="replace").encode("utf-8") - - title = scrapertools.find_single_match(data, "([^<]+)[^<]+") - title += scrapertools.find_single_match(data, "[^<]+([^<]+)") - caratula = scrapertools.find_single_match(data, '.*?src="([^"]+)"') - - # Descarga tu Archivo torrent! - - patron = 'openTorrent.*?"title=".*?" class="btn-torrent">.*?function openTorrent.*?href = "(.*?)";' - - # escraped torrent - url = scrapertools.find_single_match(data, patron) - if url != "": - itemlist.append( - Item(channel=item.channel, action="play", server="torrent", title=title + " [torrent]", fulltitle=title, - url=url, thumbnail=caratula, plot=item.plot, folder=False)) - - logger.debug("matar %s" % data) - # escraped ver vídeos, descargar vídeos un link, múltiples liks - data = data.replace("'", '"') - data = data.replace( - 'javascript:;" onClick="popup("http://www.newpct1.com/pct1/library/include/ajax/get_modallinks.php?links=', "") - data = data.replace("http://tumejorserie.com/descargar/url_encript.php?link=", "") - data = data.replace("$!", "#!") - - patron_descargar = ']+>.*?' - patron_ver = ']+>.*?' - - match_ver = scrapertools.find_single_match(data, patron_ver) - match_descargar = scrapertools.find_single_match(data, patron_descargar) - - patron = '([^<]+)' # servidor - patron += '([^<]+)' # idioma - patron += '([^<]+)' # calidad - patron += '([^<]+)' # titulo - - enlaces_ver = re.compile(patron, re.DOTALL).findall(match_ver) - enlaces_descargar = re.compile(patron, re.DOTALL).findall(match_descargar) - - for logo, servidor, idioma, calidad, enlace, titulo in enlaces_ver: - servidor = servidor.replace("streamin", "streaminto") - titulo = titulo + " [" + servidor + "]" - mostrar_server = True - if config.get_setting("hidepremium"): - mostrar_server = servertools.is_server_enabled(servidor) - if mostrar_server: - try: - devuelve = servertools.findvideosbyserver(enlace, servidor) - if devuelve: - enlace = devuelve[0][1] - itemlist.append( - Item(fanart=item.fanart, channel=item.channel, action="play", server=servidor, title=titulo, - fulltitle=item.title, url=enlace, thumbnail=logo, plot=item.plot, folder=False)) - except: - pass - - for logo, servidor, idioma, calidad, enlace, titulo in enlaces_descargar: - servidor = servidor.replace("uploaded", "uploadedto") - partes = enlace.split(" ") - p = 1 - for enlace in partes: - parte_titulo = titulo + " (%s/%s)" % (p, len(partes)) + " [" + servidor + "]" - p += 1 - mostrar_server = True - if config.get_setting("hidepremium"): - mostrar_server = servertools.is_server_enabled(servidor) - if mostrar_server: - try: - devuelve = servertools.findvideosbyserver(enlace, servidor) - if devuelve: - enlace = devuelve[0][1] - itemlist.append(Item(fanart=item.fanart, channel=item.channel, action="play", server=servidor, - title=parte_titulo, fulltitle=item.title, url=enlace, thumbnail=logo, - plot=item.plot, folder=False)) - except: - pass - return itemlist - - def episodios(item): logger.info() itemlist = [] - infoLabels = item.infoLabels - data = re.sub(r"\n|\r|\t|\s{2,}", "", httptools.downloadpage(item.url).data) - data = unicode(data, "iso-8859-1", errors="replace").encode("utf-8") - pattern = '(.*?)' % "pagination" # item.pattern - pagination = scrapertools.find_single_match(data, pattern) - if pagination: - pattern = 'Last<\/a>' - full_url = scrapertools.find_single_match(pagination, pattern) - url, last_page = scrapertools.find_single_match(full_url, r'(.*?\/pg\/)(\d+)') - list_pages = [item.url] - for x in range(2, int(last_page) + 1): - response = httptools.downloadpage('%s%s'% (url,x)) - if response.sucess: - list_pages.append("%s%s" % (url, x)) - else: - list_pages = [item.url] - - for index, page in enumerate(list_pages): - logger.debug("Loading page %s/%s url=%s" % (index, len(list_pages), page)) - data = re.sub(r"\n|\r|\t|\s{2,}", "", httptools.downloadpage(page).data) - data = unicode(data, "iso-8859-1", errors="replace").encode("utf-8") - - pattern = '(.*?)' % "buscar-list" # item.pattern - data = scrapertools.get_match(data, pattern) - - pattern = ']*>]+>(?P.*?)' - matches = re.compile(pattern, re.DOTALL).findall(data) - - for url, thumb, info in matches: - - if "\d+)?)<.+?]+>(?P.*?)\s*Calidad\s*]+>" \ - "[\[]\s*(?P.*?)\s*[\]]" - r = re.compile(pattern) - match = [m.groupdict() for m in r.finditer(info)][0] - - if match["episode2"]: - multi = True - title = "%s (%sx%s-%s) [%s][%s]" % (item.show, match["season"], str(match["episode"]).zfill(2), - str(match["episode2"]).zfill(2), match["lang"], - match["quality"]) - else: - multi = False - title = "%s (%sx%s) [%s][%s]" % (item.show, match["season"], str(match["episode"]).zfill(2), - match["lang"], match["quality"]) - - else: # old style - pattern = "\[(?P.*?)\].*?\[Cap.(?P\d+)(?P\d{2})(?:_(?P\d+)" \ - "(?P\d{2}))?.*?\].*?(?:\[(?P.*?)\])?" - - r = re.compile(pattern) - match = [m.groupdict() for m in r.finditer(info)][0] - # logger.debug("data %s" % match) - - str_lang = "" - if match["lang"] is not None: - str_lang = "[%s]" % match["lang"] - - if match["season2"] and match["episode2"]: - multi = True - if match["season"] == match["season2"]: - - title = "%s (%sx%s-%s) %s[%s]" % (item.show, match["season"], match["episode"], - match["episode2"], str_lang, match["quality"]) - else: - title = "%s (%sx%s-%sx%s) %s[%s]" % (item.show, match["season"], match["episode"], - match["season2"], match["episode2"], str_lang, - match["quality"]) - else: - title = "%s (%sx%s) %s[%s]" % (item.show, match["season"], match["episode"], str_lang, - match["quality"]) - multi = False - - season = match['season'] - episode = match['episode'] - itemlist.append(Item(channel=item.channel, action="findvideos", title=title, url=url, thumbnail=thumb, - quality=item.quality, multi=multi, contentSeason=season, - contentEpisodeNumber=episode, infoLabels = infoLabels)) - - # order list - tmdb.set_infoLabels_itemlist(itemlist, seekTmdb = True) - if len(itemlist) > 1: - itemlist = sorted(itemlist, key=lambda it: (int(it.contentSeason), int(it.contentEpisodeNumber))) - - if config.get_videolibrary_support() and len(itemlist) > 0: - itemlist.append( - item.clone(title="Añadir esta serie a la videoteca", action="add_serie_to_library", extra="episodios")) - - return itemlist - -def search(item, texto): - logger.info("search:" + texto) - # texto = texto.replace(" ", "+") - - try: - item.post = "q=%s" % texto - item.pattern = "buscar-list" - itemlist = listado2(item) - - return itemlist - - # Se captura la excepción, para no interrumpir al buscador global si un canal falla - except: - import sys - for line in sys.exc_info(): - logger.error("%s" % line) - return [] - -def newest(categoria): - logger.info() - itemlist = [] - item = Item() - try: - item.extra = 'pelilist' - if categoria == 'torrent': - item.url = host+'peliculas/' - - itemlist = listado(item) - if itemlist[-1].title == ">> Página siguiente": - itemlist.pop() - item.url = host+'series/' - itemlist.extend(listado(item)) - if itemlist[-1].title == ">> Página siguiente": - itemlist.pop() - - # Se captura la excepción, para no interrumpir al canal novedades si un canal falla - except: - import sys - for line in sys.exc_info(): - logger.error("{0}".format(line)) - return [] - - return itemlist + data = httptools.downloadpage(item.url).data + data = re.sub(r"\n|\r|\t|\s{2}| ", "", data) + patron_data='(.+?)' + data_listado = scrapertools.find_single_match(data, patron_data) + patron = '.+?.+?.+?>Serie.+?>(.+?)<' + matches = scrapertools.find_multiple_matches(data_listado, patron) + for scrapedthumbnail,scrapedurl, scrapedtitle in matches: + if " al " in scrapedtitle: + #action="episodios" + titulo=scrapedurl.split('http') + scrapedurl="http"+titulo[1] + itemlist.append(item.clone(title=scrapedtitle, url=scrapedurl,thumbnail=scrapedthumbnail, action="findvideos", show=scrapedtitle)) + return itemlist \ No newline at end of file From a96df6bd6795706ccf5d60cdba51207c6a59c6cd Mon Sep 17 00:00:00 2001 From: Unknown Date: Fri, 23 Feb 2018 16:02:38 -0300 Subject: [PATCH 19/28] placas --- plugin.video.alfa/channels/allpeliculas.py | 10 ++++---- plugin.video.alfa/channels/animeshd.py | 9 ++++---- plugin.video.alfa/channels/anitoonstv.py | 2 +- plugin.video.alfa/channels/bajui.py | 9 ++++---- plugin.video.alfa/channels/canalpelis.py | 15 ++++++------ plugin.video.alfa/channels/cartoonlatino.py | 2 +- .../channels/ciberpeliculashd.py | 23 ++++++++++++------- plugin.video.alfa/channels/cineasiaenlinea.py | 19 +++++++-------- plugin.video.alfa/channels/cinecalidad.py | 11 +++++---- plugin.video.alfa/channels/cinefox.py | 23 +++++++++++-------- plugin.video.alfa/channels/cinefoxtv.py | 10 ++++---- plugin.video.alfa/channels/cinemahd.py | 19 ++++++++++----- plugin.video.alfa/channels/cinetux.py | 22 ++++++++---------- plugin.video.alfa/platformcode/unify.py | 13 ++++++----- 14 files changed, 106 insertions(+), 81 deletions(-) diff --git a/plugin.video.alfa/channels/allpeliculas.py b/plugin.video.alfa/channels/allpeliculas.py index 591163c3..0aabc854 100644 --- a/plugin.video.alfa/channels/allpeliculas.py +++ b/plugin.video.alfa/channels/allpeliculas.py @@ -6,6 +6,7 @@ from core import scrapertools from core import servertools from core import tmdb from core.item import Item +from channelselector import get_thumb from platformcode import config, logger __modo_grafico__ = config.get_setting('modo_grafico', "allpeliculas") @@ -30,13 +31,14 @@ def mainlist(item): item.text_color = color1 itemlist.append(item.clone(title="Películas", action="lista", fanart="http://i.imgur.com/c3HS8kj.png", - url= host + "movies/newmovies?page=1", extra1 = 0)) + url= host + "movies/newmovies?page=1", extra1 = 0, + thumbnail=get_thumb('movies', auto=True))) itemlist.append(item.clone(title="Por genero", action="generos", fanart="http://i.imgur.com/c3HS8kj.png", - url= host + "movies/getGanres")) + url= host + "movies/getGanres", thumbnail=get_thumb('genres', auto=True))) itemlist.append(item.clone(title="Colecciones", action="colecciones", fanart="http://i.imgur.com/c3HS8kj.png", - url= host)) + url= host, thumbnail=get_thumb('colections', auto=True))) itemlist.append(item.clone(title="", action="")) - itemlist.append(item.clone(title="Buscar...", action="search")) + itemlist.append(item.clone(title="Buscar...", action="search", thumbnail=get_thumb('search', auto=True))) return itemlist diff --git a/plugin.video.alfa/channels/animeshd.py b/plugin.video.alfa/channels/animeshd.py index bfa87adf..d7915a10 100644 --- a/plugin.video.alfa/channels/animeshd.py +++ b/plugin.video.alfa/channels/animeshd.py @@ -6,6 +6,7 @@ import urllib from core import httptools from core import scrapertools from core import servertools +from channelselector import get_thumb from core import tmdb from core.item import Item from platformcode import logger, config @@ -40,14 +41,14 @@ def mainlist(item): itemlist.append(item.clone(title="Ultimas", action="lista", - thumbnail='https://s22.postimg.org/cb7nmhwv5/ultimas.png', + thumbnail=get_thumb('last', auto=True), fanart='https://s22.postimg.org/cb7nmhwv5/ultimas.png', url=host + '/ultimos' )) itemlist.append(item.clone(title="Todas", action="lista", - thumbnail='https://s18.postimg.org/fwvaeo6qh/todas.png', + thumbnail=get_thumb('all', auto=True), fanart='https://s18.postimg.org/fwvaeo6qh/todas.png', url=host + '/buscar?t=todos&q=' )) @@ -55,14 +56,14 @@ def mainlist(item): itemlist.append(item.clone(title="Generos", action="generos", url=host, - thumbnail='https://s3.postimg.org/5s9jg2wtf/generos.png', + thumbnail=get_thumb('genres', auto=True), fanart='https://s3.postimg.org/5s9jg2wtf/generos.png' )) itemlist.append(item.clone(title="Buscar", action="search", url=host + '/buscar?t=todos&q=', - thumbnail='https://s30.postimg.org/pei7txpa9/buscar.png', + thumbnail=get_thumb('search', auto=True), fanart='https://s30.postimg.org/pei7txpa9/buscar.png' )) diff --git a/plugin.video.alfa/channels/anitoonstv.py b/plugin.video.alfa/channels/anitoonstv.py index f273670b..5fcc9900 100644 --- a/plugin.video.alfa/channels/anitoonstv.py +++ b/plugin.video.alfa/channels/anitoonstv.py @@ -27,7 +27,7 @@ host = "http://www.anitoonstv.com" def mainlist(item): logger.info() - thumb_series = get_thumb("channels_tvshow.png") + thumb_series = get_thumb("tvshows", auto=True) autoplay.init(item.channel, list_servers, list_quality) itemlist = list() diff --git a/plugin.video.alfa/channels/bajui.py b/plugin.video.alfa/channels/bajui.py index 017562e3..fde86422 100644 --- a/plugin.video.alfa/channels/bajui.py +++ b/plugin.video.alfa/channels/bajui.py @@ -8,6 +8,7 @@ from core import scrapertools from core import servertools from core.item import Item from platformcode import logger +from channelselector import get_thumb def mainlist(item): @@ -15,13 +16,13 @@ def mainlist(item): itemlist = [] itemlist.append(Item(channel=item.channel, title="Películas", action="menupeliculas", url="http://www.bajui.org/descargas/categoria/2/peliculas", - fanart=item.fanart)) + fanart=item.fanart, thumbnail=get_thumb('movies', auto=True))) itemlist.append(Item(channel=item.channel, title="Series", action="menuseries", - fanart=item.fanart)) + fanart=item.fanart, thumbnail=get_thumb('tvshows', auto=True))) itemlist.append(Item(channel=item.channel, title="Documentales", action="menudocumentales", - fanart=item.fanart)) + fanart=item.fanart, thumbnail=get_thumb('documentaries', auto=True))) itemlist.append(Item(channel=item.channel, title="Buscar", action="search", - fanart=item.fanart)) + fanart=item.fanart, thumbnail=get_thumb('search', auto=True))) return itemlist diff --git a/plugin.video.alfa/channels/canalpelis.py b/plugin.video.alfa/channels/canalpelis.py index add2a7a7..cbea6079 100644 --- a/plugin.video.alfa/channels/canalpelis.py +++ b/plugin.video.alfa/channels/canalpelis.py @@ -15,6 +15,7 @@ from core.item import Item from core import channeltools from core import tmdb from platformcode import config, logger +from channelselector import get_thumb __channel__ = "canalpelis" @@ -51,24 +52,24 @@ def mainlist(item): logger.info() itemlist = [] - itemlist.append(item.clone(title="Peliculas", action="peliculas",thumbnail=thumbnail % 'peliculas', + itemlist.append(item.clone(title="Peliculas", action="peliculas",thumbnail=get_thumb('movies', auto=True), text_blod=True, page=0, viewcontent='movies', url=host + 'movies/', viewmode="movie_with_plot")) - itemlist.append(item.clone(title="Géneros", action="generos",thumbnail=thumbnail % 'generos', + itemlist.append(item.clone(title="Géneros", action="generos",thumbnail=get_thumb('genres', auto=True), text_blod=True, page=0, viewcontent='movies', url=host + 'genre/', viewmode="movie_with_plot")) - itemlist.append(item.clone(title="Año de Estreno", action="year_release", - text_blod=True, page=0, viewcontent='movies', - url=host + 'release/', viewmode="movie_with_plot")) + itemlist.append(item.clone(title="Año de Estreno", action="year_release", thumbnail=get_thumb('year', auto=True), + text_blod=True, page=0, viewcontent='movies', url=host + 'release/', + viewmode="movie_with_plot")) - itemlist.append(item.clone(title="Buscar", action="search",thumbnail=thumbnail % 'busqueda', + itemlist.append(item.clone(title="Buscar", action="search",thumbnail=get_thumb('search', auto=True), text_blod=True, url=host, page=0)) itemlist.append(item.clone(title="Series", action="series", extra='serie', url=host + 'tvshows/', viewmode="movie_with_plot", text_blod=True, viewcontent='movies', - thumbnail=thumbnail % 'series', page=0)) + thumbnail=get_thumb('tvshows', auto=True), page=0)) return itemlist diff --git a/plugin.video.alfa/channels/cartoonlatino.py b/plugin.video.alfa/channels/cartoonlatino.py index 23b59b61..8fcc8a60 100644 --- a/plugin.video.alfa/channels/cartoonlatino.py +++ b/plugin.video.alfa/channels/cartoonlatino.py @@ -25,7 +25,7 @@ list_quality = ['default'] def mainlist(item): logger.info() - thumb_series = get_thumb("channels_tvshow.png") + thumb_series = get_thumb('tvshows', auto=True) autoplay.init(item.channel, list_servers, list_quality) itemlist = list() itemlist.append(Item(channel=item.channel, action="lista", title="Series", url=host, diff --git a/plugin.video.alfa/channels/ciberpeliculashd.py b/plugin.video.alfa/channels/ciberpeliculashd.py index 3562697f..cc9c5a86 100644 --- a/plugin.video.alfa/channels/ciberpeliculashd.py +++ b/plugin.video.alfa/channels/ciberpeliculashd.py @@ -6,7 +6,7 @@ from core import servertools from core import tmdb from core.item import Item from platformcode import config, logger - +from channelselector import get_thumb __channel__='ciberpeliculashd' host = "http://ciberpeliculashd.net" @@ -21,16 +21,23 @@ def mainlist(item): logger.info() itemlist = [] itemlist.append(Item(channel = item.channel, title = "Películas", text_bold = True, folder = False)) - itemlist.append(Item(channel = item.channel, title = " Novedades", action = "peliculas", url = host + "/?peli=1")) - itemlist.append(Item(channel = item.channel, title = " Por género", action = "filtro", url = host, extra = "categories" )) - itemlist.append(Item(channel = item.channel, title = " Por calidad", action = "filtro", url = host, extra = "qualitys")) - itemlist.append(Item(channel = item.channel, title = " Por idioma", action = "filtro", url = host, extra = "languages")) + itemlist.append(Item(channel = item.channel, title = " Novedades", action = "peliculas", url = host + "/?peli=1", + thumbnail=get_thumb('newest', auto=True))) + itemlist.append(Item(channel = item.channel, title = " Por género", action = "filtro", url = host, + extra = "categories", thumbnail=get_thumb('genres', auto=True))) + itemlist.append(Item(channel = item.channel, title = " Por calidad", action = "filtro", url = host, + extra = "qualitys", thumbnail=get_thumb('quality', auto=True))) + itemlist.append(Item(channel = item.channel, title = " Por idioma", action = "filtro", url = host, + extra = "languages", thumbnail=get_thumb('language', auto=True))) itemlist.append(Item(channel = item.channel, title = "")) itemlist.append(Item(channel = item.channel, title = "Series", text_bold = True, folder = False)) - itemlist.append(Item(channel = item.channel, title = " Novedades", action = "series", url = host + "/series/?peli=1")) - itemlist.append(Item(channel = item.channel, title = " Nuevos Capitulos", action = "nuevos_capitulos", url = host + "/series/?peli=1")) + itemlist.append(Item(channel = item.channel, title = " Novedades", action = "series", + url = host +"/series/?peli=1", thumbnail=get_thumb('newest', auto=True))) + itemlist.append(Item(channel = item.channel, title = " Nuevos Capitulos", action = "nuevos_capitulos", + url = host + "/series/?peli=1", thumbnail=get_thumb('new episodes', auto=True))) itemlist.append(Item(channel = item.channel, title = "")) - itemlist.append(Item(channel = item.channel, title = "Buscar", action = "search", url = host + "/?s=")) + itemlist.append(Item(channel = item.channel, title = "Buscar", action = "search", url = host + "/?s=", + thumbnail=get_thumb('search', auto=True))) return itemlist def nuevos_capitulos(item): diff --git a/plugin.video.alfa/channels/cineasiaenlinea.py b/plugin.video.alfa/channels/cineasiaenlinea.py index cefff938..968b9095 100755 --- a/plugin.video.alfa/channels/cineasiaenlinea.py +++ b/plugin.video.alfa/channels/cineasiaenlinea.py @@ -8,6 +8,7 @@ from core import servertools from core import tmdb from core.item import Item from platformcode import config, logger +from channelselector import get_thumb host = "http://www.cineasiaenlinea.com/" __channel__='cineasiaenlinea' @@ -36,19 +37,19 @@ def mainlist(item): itemlist = [] itemlist.append(item.clone(action="peliculas", title="Novedades", url=host + "archivos/peliculas", - thumbnail="https://raw.githubusercontent.com/master-1970/resources/master/images/genres" - "/0/Directors%20Chair.png", text_color=color1)) + thumbnail=get_thumb('newest', auto=True), text_color=color1,)) itemlist.append(item.clone(action="peliculas", title="Estrenos", url=host + "archivos/estrenos", - thumbnail="https://raw.githubusercontent.com/master-1970/resources/master/images/genres" - "/0/Directors%20Chair.png", text_color=color1)) + thumbnail=get_thumb('premieres', auto=True), text_color=color1)) itemlist.append(item.clone(action="indices", title="Por géneros", url=host, - thumbnail="https://raw.githubusercontent.com/master-1970/resources/master/images/genres" - "/0/Genre.png", text_color=color1)) - itemlist.append(item.clone(action="indices", title="Por país", url=host, text_color=color1)) - itemlist.append(item.clone(action="indices", title="Por año", url=host, text_color=color1)) + thumbnail=get_thumb('genres', auto=True), text_color=color1)) + itemlist.append(item.clone(action="indices", title="Por país", url=host, text_color=color1, + thumbnail=get_thumb('country', auto=True))) + itemlist.append(item.clone(action="indices", title="Por año", url=host, text_color=color1, + thumbnail=get_thumb('year', auto=True))) itemlist.append(item.clone(title="", action="")) - itemlist.append(item.clone(action="search", title="Buscar...", text_color=color3)) + itemlist.append(item.clone(action="search", title="Buscar...", text_color=color3, + thumbnail=get_thumb('search', auto=True))) itemlist.append(item.clone(action="configuracion", title="Configurar canal...", text_color="gold", folder=False)) return itemlist diff --git a/plugin.video.alfa/channels/cinecalidad.py b/plugin.video.alfa/channels/cinecalidad.py index 55981dd3..a2d42f4f 100644 --- a/plugin.video.alfa/channels/cinecalidad.py +++ b/plugin.video.alfa/channels/cinecalidad.py @@ -11,6 +11,7 @@ from core import servertools from core import tmdb from core.item import Item from platformcode import config, logger +from channelselector import get_thumb IDIOMAS = {'latino': 'Latino', 'castellano': 'Español', 'portugues': 'Portugues'} list_language = IDIOMAS.values() @@ -86,34 +87,34 @@ def submenu(item): title=idioma.capitalize(), action="peliculas", url=host, - thumbnail='https://s8.postimg.org/6wqwy2c2t/peliculas.png', + thumbnail=get_thumb('movies', auto=True), fanart='https://s8.postimg.org/6wqwy2c2t/peliculas.png', )) itemlist.append(Item(channel=item.channel, title="Destacadas", action="peliculas", url=host + "/genero-" + idioma + "/" + idioma2 + "/", - thumbnail='https://s30.postimg.org/humqxklsx/destacadas.png', + thumbnail=get_thumb('hot', auto=True), fanart='https://s30.postimg.org/humqxklsx/destacadas.png', )) itemlist.append(Item(channel=item.channel, title="Generos", action="generos", url=host + "/genero-" + idioma, - thumbnail='https://s3.postimg.org/5s9jg2wtf/generos.png', + thumbnail=get_thumb('genres', auto=True), fanart='https://s3.postimg.org/5s9jg2wtf/generos.png', )) itemlist.append(Item(channel=item.channel, title="Por Año", action="anyos", url=host + "/" + idioma + "-por-ano", - thumbnail='https://s8.postimg.org/7eoedwfg5/pora_o.png', + thumbnail=get_thumb('year', auto=True), fanart='https://s8.postimg.org/7eoedwfg5/pora_o.png', )) itemlist.append(Item(channel=item.channel, title="Buscar", action="search", - thumbnail='https://s30.postimg.org/pei7txpa9/buscar.png', + thumbnail=get_thumb('search', auto=True), url=host + '/apiseries/seriebyword/', fanart='https://s30.postimg.org/pei7txpa9/buscar.png', host=item.host, diff --git a/plugin.video.alfa/channels/cinefox.py b/plugin.video.alfa/channels/cinefox.py index 20949389..1e3aafa2 100644 --- a/plugin.video.alfa/channels/cinefox.py +++ b/plugin.video.alfa/channels/cinefox.py @@ -9,6 +9,7 @@ from core import scrapertools from core import servertools from core.item import Item from platformcode import config, logger +from channelselector import get_thumb __modo_grafico__ = config.get_setting('modo_grafico', 'cinefox') __perfil__ = int(config.get_setting('perfil', "cinefox")) @@ -32,20 +33,22 @@ def mainlist(item): itemlist = [] itemlist.append(item.clone(action="seccion_peliculas", title="Películas", fanart="http://i.imgur.com/PjJaW8o.png", - url=host + "/catalogue?type=peliculas")) + url=host + "/catalogue?type=peliculas", thumbnail=get_thumb('movies', auto=True))) # Seccion series itemlist.append(item.clone(action="seccion_series", title="Series", - url=host + "/ultimos-capitulos", fanart="http://i.imgur.com/9loVksV.png")) + url=host + "/ultimos-capitulos", fanart="http://i.imgur.com/9loVksV.png", + thumbnail=get_thumb('tvshows', auto=True))) itemlist.append(item.clone(action="peliculas", title="Documentales", fanart="http://i.imgur.com/Q7fsFI6.png", - url=host + "/catalogue?type=peliculas&genre=documental")) + url=host + "/catalogue?type=peliculas&genre=documental", + thumbnail=get_thumb('documentaries', auto=True))) if config.get_setting("adult_mode") != 0: itemlist.append(item.clone(action="peliculas", title="Sección Adultos +18", url=host + "/catalogue?type=adultos", - fanart="http://i.imgur.com/kIvE1Zh.png")) + fanart="http://i.imgur.com/kIvE1Zh.png", thumbnail=get_thumb('adults', auto=True))) - itemlist.append(item.clone(title="Buscar...", action="local_search")) + itemlist.append(item.clone(title="Buscar...", action="local_search", thumbnail=get_thumb('search', auto=True))) itemlist.append(item.clone(title="Configurar canal...", text_color="gold", action="configuracion", folder=False)) return itemlist @@ -254,9 +257,10 @@ def seccion_peliculas(item): itemlist = [] # Seccion peliculas itemlist.append(item.clone(action="peliculas", title="Novedades", fanart="http://i.imgur.com/PjJaW8o.png", - url=host + "/catalogue?type=peliculas")) + url=host + "/catalogue?type=peliculas", thumbnail=get_thumb('newest', auto=True))) itemlist.append(item.clone(action="peliculas", title="Estrenos", - url=host + "/estrenos-de-cine", fanart="http://i.imgur.com/PjJaW8o.png")) + url=host + "/estrenos-de-cine", fanart="http://i.imgur.com/PjJaW8o.png", + thumbnail=get_thumb('premieres', auto=True))) itemlist.append(item.clone(action="filtro", title="Filtrar películas", extra="peliculas", url=host + "/catalogue?type=peliculas", fanart="http://i.imgur.com/PjJaW8o.png")) @@ -281,10 +285,11 @@ def seccion_series(item): itemlist = [] # Seccion series itemlist.append(item.clone(action="ultimos", title="Últimos capítulos", - url=host + "/ultimos-capitulos", fanart="http://i.imgur.com/9loVksV.png")) + url=host + "/ultimos-capitulos", fanart="http://i.imgur.com/9loVksV.png", + thumbnail=get_thumb('new episodes', auto=True))) itemlist.append(item.clone(action="series", title="Series recientes", url=host + "/catalogue?type=series", - fanart="http://i.imgur.com/9loVksV.png")) + fanart="http://i.imgur.com/9loVksV.png", thumbnail=get_thumb('recents', auto=True))) itemlist.append(item.clone(action="filtro", title="Filtrar series", extra="series", url=host + "/catalogue?type=series", fanart="http://i.imgur.com/9loVksV.png")) diff --git a/plugin.video.alfa/channels/cinefoxtv.py b/plugin.video.alfa/channels/cinefoxtv.py index 07b60ee6..9921dd40 100644 --- a/plugin.video.alfa/channels/cinefoxtv.py +++ b/plugin.video.alfa/channels/cinefoxtv.py @@ -9,6 +9,7 @@ from core import servertools from core import tmdb from core.item import Item from platformcode import config, logger +from channelselector import get_thumb host = 'http://verhdpelis.com/' headers = [['User-Agent', 'Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Firefox/45.0'], @@ -49,21 +50,20 @@ def mainlist(item): itemlist = [] - itemlist.append(item.clone(title="Todas", action="lista", thumbnail='https://s18.postimg.org/fwvaeo6qh/todas.png', + itemlist.append(item.clone(title="Todas", action="lista", thumbnail=get_thumb('all', auto=True), fanart='https://s18.postimg.org/fwvaeo6qh/todas.png', extra='peliculas/', url=host + 'page/1.html')) itemlist.append( - itemlist[-1].clone(title="Generos", action="generos", thumbnail='https://s3.postimg.org/5s9jg2wtf/generos.png', + itemlist[-1].clone(title="Generos", action="generos", thumbnail=get_thumb('genres', auto=True), fanart='https://s3.postimg.org/5s9jg2wtf/generos.png', url=host)) itemlist.append( - itemlist[-1].clone(title="Mas Vistas", action="lista", thumbnail='https://s9.postimg.org/wmhzu9d7z/vistas.png', + itemlist[-1].clone(title="Mas Vistas", action="lista", thumbnail=get_thumb('more watched', auto=True), fanart='https://s9.postimg.org/wmhzu9d7z/vistas.png', url=host + 'top-peliculas-online/1.html')) - itemlist.append(itemlist[-1].clone(title="Buscar", action="search", - thumbnail='https://s30.postimg.org/pei7txpa9/buscar.png', + itemlist.append(itemlist[-1].clone(title="Buscar", action="search", thumbnail=get_thumb('search', auto=True), fanart='https://s30.postimg.org/pei7txpa9/buscar.png', url=host + 'search/')) return itemlist diff --git a/plugin.video.alfa/channels/cinemahd.py b/plugin.video.alfa/channels/cinemahd.py index 9cf46904..236cdf0b 100644 --- a/plugin.video.alfa/channels/cinemahd.py +++ b/plugin.video.alfa/channels/cinemahd.py @@ -19,12 +19,17 @@ def mainlist(item): logger.info() itemlist = list() - itemlist.append(item.clone(title="Ultimas", action="list_all", url=host)) - itemlist.append(item.clone(title="Generos", action="section", section='genre')) - itemlist.append(item.clone(title="Por Calidad", action="section", section='quality')) - itemlist.append(item.clone(title="Por Año", action="section", section='year')) - itemlist.append(item.clone(title="Alfabetico", action="section", section='alpha')) - itemlist.append(item.clone(title="Buscar", action="search", url=host+'?s=')) + itemlist.append(item.clone(title="Ultimas", action="list_all", url=host, thumbnail=get_thumb('last', auto=True))) + itemlist.append(item.clone(title="Generos", action="section", section='genre', + thumbnail=get_thumb('genres', auto=True))) + itemlist.append(item.clone(title="Por Calidad", action="section", section='quality', + thumbnail=get_thumb('quality', auto=True))) + itemlist.append(item.clone(title="Por Año", action="section", section='year', + thumbnail=get_thumb('year', auto=True))) + itemlist.append(item.clone(title="Alfabetico", action="section", section='alpha', + thumbnail=get_thumb('alphabet', auto=True))) + itemlist.append(item.clone(title="Buscar", action="search", url=host+'?s=', + thumbnail=get_thumb('search', auto=True))) return itemlist @@ -40,6 +45,8 @@ def list_all(item): logger.info() itemlist = [] + data = get_source(item.url) + if item.section == 'alpha': patron = '\d+.*?(.*?).*?' patron += '(\d{4}).*?Qlty>(.*?)' diff --git a/plugin.video.alfa/channels/cinetux.py b/plugin.video.alfa/channels/cinetux.py index acbe0c53..578bb373 100644 --- a/plugin.video.alfa/channels/cinetux.py +++ b/plugin.video.alfa/channels/cinetux.py @@ -6,6 +6,7 @@ from core import servertools from core import tmdb from core.item import Item from platformcode import config, logger +from channelselector import get_thumb CHANNEL_HOST = "http://www.cinetux.io/" @@ -32,28 +33,25 @@ def mainlist(item): titulo = "Peliculas (%s)" %total itemlist.append(item.clone(title=titulo, text_color=color2, action="", text_bold=True)) itemlist.append(item.clone(action="peliculas", title=" Novedades", url=CHANNEL_HOST + "pelicula", - thumbnail="https://raw.githubusercontent.com/master-1970/resources/master/images/genres" - "/0/Directors%20Chair.png", + thumbnail=get_thumb('newest', auto=True), text_color=color1)) itemlist.append(item.clone(action="destacadas", title=" Destacadas", url=CHANNEL_HOST + "mas-vistos/", - thumbnail="https://raw.githubusercontent.com/master-1970/resources/master/images/genres" - "/0/Favorites.png", + thumbnail=get_thumb('hot', auto=True), text_color=color1)) - itemlist.append(item.clone(action="idioma", title=" Por idioma", text_color=color1)) + itemlist.append(item.clone(action="idioma", title=" Por idioma", text_color=color1, + thumbnail=get_thumb('language', auto=True))) itemlist.append(item.clone(action="generos", title=" Por géneros", url=CHANNEL_HOST, - thumbnail="https://raw.githubusercontent.com/master-1970/resources/master/images/genres" - "/0/Genre.png", + thumbnail=get_thumb('genres', auto=True), text_color=color1)) itemlist.append(item.clone(title="Documentales", text_bold=True, text_color=color2, action="")) itemlist.append(item.clone(action="peliculas", title=" Novedades", url=CHANNEL_HOST + "genero/documental/", text_color=color1, - thumbnail="https://raw.githubusercontent.com/master-1970/resources/master/images/genres" - "/0/Documentaries.png")) + thumbnail=get_thumb('newest', auto=True))) itemlist.append(item.clone(action="peliculas", title=" Por orden alfabético", text_color=color1, url=CHANNEL_HOST + "genero/documental/?orderby=title&order=asc&gdsr_order=asc", - thumbnail="https://raw.githubusercontent.com/master-1970/resources/master/images/genres" - "/0/A-Z.png")) + thumbnail=get_thumb('alphabet', auto=True))) itemlist.append(item.clone(title="", action="")) - itemlist.append(item.clone(action="search", title="Buscar...", text_color=color3)) + itemlist.append(item.clone(action="search", title="Buscar...", text_color=color3, + thumbnail=get_thumb('search', auto=True))) itemlist.append(item.clone(action="configuracion", title="Configurar canal...", text_color="gold", folder=False)) return itemlist diff --git a/plugin.video.alfa/platformcode/unify.py b/plugin.video.alfa/platformcode/unify.py index 1e6227f6..f11cadc7 100644 --- a/plugin.video.alfa/platformcode/unify.py +++ b/plugin.video.alfa/platformcode/unify.py @@ -27,20 +27,21 @@ thumb_dict = {"movies": "https://s10.postimg.org/fxtqzdog9/peliculas.png", "newest": "https://s10.postimg.org/g1s5tf1bt/novedades.png", "last": "https://s10.postimg.org/i6ciuk0eh/ultimas.png", "hot": "https://s10.postimg.org/yu40x8q2x/destacadas.png", - "year": "https://s10.postimg.org/egcw1womh/a_o.png", + "year": "https://s10.postimg.org/atzrqg921/a_o.png", "alphabet": "https://s10.postimg.org/4dy3ytmgp/a-z.png", "recomended": "https://s10.postimg.org/7xk1oqccp/recomendadas.png", - "more_watched": "https://s10.postimg.org/c6orr5neh/masvistas.png", - "more_voted": "https://s10.postimg.org/c6orr5neh/masvistas.png", + "more watched": "https://s10.postimg.org/c6orr5neh/masvistas.png", + "more voted": "https://s10.postimg.org/c6orr5neh/masvistas.png", "favorites": "https://s10.postimg.org/rtg147gih/favoritas.png", "colections": "https://s10.postimg.org/ywnwjvytl/colecciones.png", "categories": "https://s10.postimg.org/v0ako5lmh/categorias.png", "premieres": "https://s10.postimg.org/sk8r9xdq1/estrenos.png", "documentaries": "https://s10.postimg.org/68aygmmcp/documentales.png", - "language": "https://s10.postimg.org/hknjykfnt/idioma.png", - "new_episodes": "https://s10.postimg.org/fu4iwpnqh/nuevoscapitulos.png", - "country": "https://s10.postimg.org/hlxhrrjzt/pais.png", + "language": "https://s10.postimg.org/6wci189ft/idioma.png", + "new episodes": "https://s10.postimg.org/fu4iwpnqh/nuevoscapitulos.png", + "country": "https://s10.postimg.org/yz0h81j15/pais.png", "adults": "https://s10.postimg.org/s8raxc51l/adultos.png", + "recents": "https://s10.postimg.org/649u24kp5/recents.png", "accion": "https://s14.postimg.org/sqy3q2aht/action.png", "adolescente" : "https://s10.postimg.org/inq7u4p61/teens.png", "adultos": "https://s10.postimg.org/s8raxc51l/adultos.png", From fadc8157cd6f0d1093ded70ece0969ecc25c3d11 Mon Sep 17 00:00:00 2001 From: Intel1 <25161862+Intel11@users.noreply.github.com> Date: Fri, 23 Feb 2018 14:07:12 -0500 Subject: [PATCH 20/28] documaniatv: no mantenido por el addon --- plugin.video.alfa/channels/documaniatv.json | 47 --------------------- 1 file changed, 47 deletions(-) delete mode 100755 plugin.video.alfa/channels/documaniatv.json diff --git a/plugin.video.alfa/channels/documaniatv.json b/plugin.video.alfa/channels/documaniatv.json deleted file mode 100755 index 0ebbeb99..00000000 --- a/plugin.video.alfa/channels/documaniatv.json +++ /dev/null @@ -1,47 +0,0 @@ -{ - "id": "documaniatv", - "name": "DocumaniaTV", - "active": true, - "adult": false, - "language": ["cast", "lat"], - "thumbnail": "http://i.imgur.com/qMR9sg9.png", - "banner": "documaniatv.png", - "categories": [ - "documentary" - ], - "settings": [ - { - "id": "include_in_newest_documentales", - "type": "bool", - "label": "Incluir en Novedades - Documentales", - "default": true, - "enabled": true, - "visible": true - }, - { - "id": "documaniatvaccount", - "type": "bool", - "label": "Usar cuenta de documaniatv", - "default": true, - "enabled": true, - "visible": true - }, - { - "id": "documaniatvuser", - "type": "text", - "label": "Usuario", - "color": "0xFFd50b0b", - "enabled": "eq(-1,true)", - "visible": true - }, - { - "id": "documaniatvpassword", - "type": "text", - "label": "Contraseña", - "color": "0xFFd50b0b", - "enabled": "!eq(-1,)+eq(-2,true)", - "visible": true, - "hidden": true - } - ] -} \ No newline at end of file From ef22d23d034dca72b1698353f703e7de17aad2db Mon Sep 17 00:00:00 2001 From: Intel1 <25161862+Intel11@users.noreply.github.com> Date: Fri, 23 Feb 2018 14:10:20 -0500 Subject: [PATCH 21/28] documaniatv: no mantenido por el addon --- plugin.video.alfa/channels/documaniatv.py | 373 ---------------------- 1 file changed, 373 deletions(-) delete mode 100755 plugin.video.alfa/channels/documaniatv.py diff --git a/plugin.video.alfa/channels/documaniatv.py b/plugin.video.alfa/channels/documaniatv.py deleted file mode 100755 index 35f945fb..00000000 --- a/plugin.video.alfa/channels/documaniatv.py +++ /dev/null @@ -1,373 +0,0 @@ -# -*- coding: utf-8 -*- - -import re -import urllib -import urlparse - -from core import jsontools -from core import scrapertools -from core.item import Item -from platformcode import config, logger - -host = "http://www.documaniatv.com/" -account = config.get_setting("documaniatvaccount", "documaniatv") - -headers = [['User-Agent', 'Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Firefox/45.0'], - ['Referer', host]] - - -def login(): - logger.info() - - user = config.get_setting("documaniatvuser", "documaniatv") - password = config.get_setting("documaniatvpassword", "documaniatv") - if user == "" or password == "": - return True, "" - - data = scrapertools.cachePage(host, headers=headers) - if "http://www.documaniatv.com/user/" + user in data: - return False, user - - post = "username=%s&pass=%s&Login=Iniciar Sesión" % (user, password) - data = scrapertools.cachePage("http://www.documaniatv.com/login.php", headers=headers, post=post) - - if "Nombre de usuario o contraseña incorrectas" in data: - logger.error("login erróneo") - return True, "" - - return False, user - - -def mainlist(item): - logger.info() - - itemlist = [] - itemlist.append(item.clone(action="novedades", title="Novedades", url="http://www.documaniatv.com/newvideos.html")) - itemlist.append( - item.clone(action="categorias", title="Categorías y Canales", url="http://www.documaniatv.com/browse.html")) - itemlist.append(item.clone(action="novedades", title="Top", url="http://www.documaniatv.com/topvideos.html")) - itemlist.append(item.clone(action="categorias", title="Series Documentales", - url="http://www.documaniatv.com/top-series-documentales-html")) - itemlist.append(item.clone(action="viendo", title="Viendo ahora", url="http://www.documaniatv.com")) - itemlist.append(item.clone(action="", title="")) - itemlist.append(item.clone(action="search", title="Buscar")) - - folder = False - action = "" - if account: - error, user = login() - if error: - title = "Playlists Personales (Error en usuario y/o contraseña)" - else: - title = "Playlists Personales (Logueado)" - action = "usuario" - folder = True - - else: - title = "Playlists Personales (Sin cuenta configurada)" - user = "" - - url = "http://www.documaniatv.com/user/%s" % user - itemlist.append(item.clone(title=title, action=action, url=url, folder=folder)) - itemlist.append(item.clone(title="Configurar canal...", text_color="gold", action="configuracion", - folder=False)) - return itemlist - - -def configuracion(item): - from platformcode import platformtools - platformtools.show_channel_settings() - if config.is_xbmc(): - import xbmc - xbmc.executebuiltin("Container.Refresh") - - -def newest(categoria): - itemlist = [] - item = Item() - try: - if categoria == 'documentales': - item.url = "http://www.documaniatv.com/newvideos.html" - itemlist = novedades(item) - - if itemlist[-1].action == "novedades": - itemlist.pop() - - # Se captura la excepción, para no interrumpir al canal novedades si un canal falla - except: - import sys - for line in sys.exc_info(): - logger.error("{0}".format(line)) - return [] - - return itemlist - - -def search(item, texto): - logger.info() - data = scrapertools.cachePage(host, headers=headers) - item.url = scrapertools.find_single_match(data, 'form action="([^"]+)"') + "?keywords=%s&video-id=" - texto = texto.replace(" ", "+") - item.url = item.url % texto - try: - return novedades(item) - # Se captura la excepción, para no interrumpir al buscador global si un canal falla - except: - import sys - for line in sys.exc_info(): - logger.error("%s" % line) - return [] - - -def novedades(item): - logger.info() - itemlist = [] - - # Descarga la pagina - data = scrapertools.cachePage(item.url, headers=headers) - # Saca el plot si lo tuviese - scrapedplot = scrapertools.find_single_match(data, '(.*?)') - if "(.*?)') - - if "Registrarse" in data or not account: - for match in bloque: - patron = '(.*?).*?»') - next_page_url = urlparse.urljoin(host, next_page_url) - itemlist.append(item.clone(action="novedades", title=">> Página siguiente", url=next_page_url)) - except: - logger.error("Siguiente pagina no encontrada") - - return itemlist - - -def categorias(item): - logger.info() - itemlist = [] - data = scrapertools.cachePage(item.url, headers=headers) - - patron = '.*?(?:|)(.*?)<' - matches = scrapertools.find_multiple_matches(data, patron) - for scrapedurl, scrapedthumbnail, scrapedtitle in matches: - if not scrapedthumbnail.startswith("data:image"): - scrapedthumbnail += "|" + headers[0][0] + "=" + headers[0][1] - else: - scrapedthumbnail = item.thumbnail - itemlist.append(item.clone(action="novedades", title=scrapedtitle, url=scrapedurl, thumbnail=scrapedthumbnail, - fanart=scrapedthumbnail)) - - # Busca enlaces de paginas siguientes... - next_page_url = scrapertools.find_single_match(data, '') - if next_page_url != "": - itemlist.append(item.clone(action="categorias", title=">> Página siguiente", url=next_page_url)) - - return itemlist - - -def viendo(item): - logger.info() - itemlist = [] - - # Descarga la pagina - data = scrapertools.cachePage(item.url, headers=headers) - bloque = scrapertools.find_single_match(data, '') - patron = '(.*?).*?(.*?).*?' \ - '(.*?)' - matches = scrapertools.find_multiple_matches(data, patron) - for playlist_id, playlist_action, playlist_title, video_count in matches: - scrapedtitle = playlist_action.replace('remove', 'Eliminar de ').replace('add', 'Añadir a ') - scrapedtitle += playlist_title + " (" + video_count + ")" - itemlist.append(item.clone(action="acciones_playlist", title=scrapedtitle, list_id=playlist_id, - url="http://www.documaniatv.com/ajax.php", folder=folder)) - - if "kodi" in config.get_platform(): - itemlist.append(item.clone(action="acciones_playlist", title="Crear una nueva playlist y añadir el documental", - id=item.id, url="http://www.documaniatv.com/ajax.php", folder=folder)) - itemlist.append(item.clone(action="acciones_playlist", title="Me gusta", url="http://www.documaniatv.com/ajax.php", - folder=folder)) - - return itemlist - - -def play_(item): - logger.info() - itemlist = [] - - try: - import xbmc - if not xbmc.getCondVisibility('System.HasAddon(script.cnubis)'): - from platformcode import platformtools - platformtools.dialog_ok("Addon no encontrado", - "Para ver vídeos alojados en cnubis necesitas tener su instalado su add-on", - line3="Descárgalo en http://cnubis.com/kodi-pelisalacarta.html") - return itemlist - except: - pass - - # Descarga la pagina - data = scrapertools.cachePage(item.url, headers=headers) - # Busca enlace directo - video_url = scrapertools.find_single_match(data, 'class="embedded-video"[^<]+(.*?)(.*?)' \ - '.*?(.*?)' - matches = scrapertools.find_multiple_matches(data, patron) - for scrapedthumbnail, scrapedurl, scrapedtitle in matches: - scrapedthumbnail += "|" + headers[0][0] + "=" + headers[0][1] - logger.debug("title=[" + scrapedtitle + "], url=[" + scrapedurl + "], thumbnail=[" + scrapedthumbnail + "]") - itemlist.append(item.clone(action="play_", title=scrapedtitle, url=scrapedurl, thumbnail=scrapedthumbnail, - fanart=scrapedthumbnail, fulltitle=scrapedtitle, folder=False)) - - return itemlist From 6952b1a3ffedc2d0213da1e431cd4a11229c47da Mon Sep 17 00:00:00 2001 From: danielr460 Date: Fri, 23 Feb 2018 15:22:34 -0500 Subject: [PATCH 22/28] =?UTF-8?q?A=C3=B1adiendo=20Torrent=20a=20Newptc=20y?= =?UTF-8?q?=20Newptc1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- plugin.video.alfa/channels/newpct.py | 21 ++++++++++++++++++--- plugin.video.alfa/channels/newpct1.py | 17 +++++++++++++++++ 2 files changed, 35 insertions(+), 3 deletions(-) diff --git a/plugin.video.alfa/channels/newpct.py b/plugin.video.alfa/channels/newpct.py index 4e8f36c7..14ea9969 100755 --- a/plugin.video.alfa/channels/newpct.py +++ b/plugin.video.alfa/channels/newpct.py @@ -4,6 +4,7 @@ import re import urllib import urlparse +from core import servertools from core import scrapertools from core.item import Item from platformcode import logger @@ -48,15 +49,12 @@ def listado(item): data = re.sub(r"\n|\r|\t|\s{2}| ", "", data) patron_data='(.+?)' data_listado = scrapertools.find_single_match(data, patron_data) - logger.info("sadas"+data_listado) patron_listado='' else: patron_listado+='>' patron_listado+='(.+?)<\/h2>(.+?)<\/span><\/a><\/li>' - logger.info("sasssss"+patron_listado) - matches = scrapertools.find_multiple_matches(data_listado, patron_listado) for scrapedurl, scrapedthumbnail,scrapedtitle,scrapedquality in matches: if 'Serie' in item.title: @@ -86,4 +84,21 @@ def episodios(item): titulo=scrapedurl.split('http') scrapedurl="http"+titulo[1] itemlist.append(item.clone(title=scrapedtitle, url=scrapedurl,thumbnail=scrapedthumbnail, action="findvideos", show=scrapedtitle)) + return itemlist + +def findvideos(item): + logger.info() + itemlist = [] + new_item = [] + data = httptools.downloadpage(item.url).data + itemlist = servertools.find_video_items(data = data) + url = scrapertools.find_single_match( data, 'location.href = "([^"]+)"') + data = httptools.downloadpage(url, follow_redirects=False).headers['location'] + data = httptools.downloadpage(url).data + new_item.append(Item(url = url, title = "Torrent", server = "torrent", action = "play")) + itemlist.extend(new_item) + for it in itemlist: + it.channel = item.channel + + scrapertools.printMatches(itemlist) return itemlist \ No newline at end of file diff --git a/plugin.video.alfa/channels/newpct1.py b/plugin.video.alfa/channels/newpct1.py index 84a69863..a8adeb50 100644 --- a/plugin.video.alfa/channels/newpct1.py +++ b/plugin.video.alfa/channels/newpct1.py @@ -86,4 +86,21 @@ def episodios(item): titulo=scrapedurl.split('http') scrapedurl="http"+titulo[1] itemlist.append(item.clone(title=scrapedtitle, url=scrapedurl,thumbnail=scrapedthumbnail, action="findvideos", show=scrapedtitle)) + return itemlist + +def findvideos(item): + logger.info() + itemlist = [] + new_item = [] + data = httptools.downloadpage(item.url).data + itemlist = servertools.find_video_items(data = data) + url = scrapertools.find_single_match( data, 'location.href = "([^"]+)"') + data = httptools.downloadpage(url, follow_redirects=False).headers['location'] + data = httptools.downloadpage(url).data + new_item.append(Item(url = url, title = "Torrent", server = "torrent", action = "play")) + itemlist.extend(new_item) + for it in itemlist: + it.channel = item.channel + + scrapertools.printMatches(itemlist) return itemlist \ No newline at end of file From b90ea4de2b3f4a07adc66d6def3d6acf519bd930 Mon Sep 17 00:00:00 2001 From: danielr460 Date: Fri, 23 Feb 2018 15:24:49 -0500 Subject: [PATCH 23/28] Update --- plugin.video.alfa/channels/newpct1.py | 1 + 1 file changed, 1 insertion(+) diff --git a/plugin.video.alfa/channels/newpct1.py b/plugin.video.alfa/channels/newpct1.py index a8adeb50..d328e143 100644 --- a/plugin.video.alfa/channels/newpct1.py +++ b/plugin.video.alfa/channels/newpct1.py @@ -4,6 +4,7 @@ import re import urllib import urlparse +from core import servertools from core import scrapertools from core.item import Item from platformcode import logger From d29edda3a9096a6d7611881d711e923b431e0866 Mon Sep 17 00:00:00 2001 From: danielr460 Date: Fri, 23 Feb 2018 15:34:03 -0500 Subject: [PATCH 24/28] =?UTF-8?q?Eliminando=20c=C3=B3digo=20innecesario?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- plugin.video.alfa/channels/newpct.py | 2 -- plugin.video.alfa/channels/newpct1.py | 5 ----- 2 files changed, 7 deletions(-) diff --git a/plugin.video.alfa/channels/newpct.py b/plugin.video.alfa/channels/newpct.py index 14ea9969..07e33c07 100755 --- a/plugin.video.alfa/channels/newpct.py +++ b/plugin.video.alfa/channels/newpct.py @@ -93,8 +93,6 @@ def findvideos(item): data = httptools.downloadpage(item.url).data itemlist = servertools.find_video_items(data = data) url = scrapertools.find_single_match( data, 'location.href = "([^"]+)"') - data = httptools.downloadpage(url, follow_redirects=False).headers['location'] - data = httptools.downloadpage(url).data new_item.append(Item(url = url, title = "Torrent", server = "torrent", action = "play")) itemlist.extend(new_item) for it in itemlist: diff --git a/plugin.video.alfa/channels/newpct1.py b/plugin.video.alfa/channels/newpct1.py index d328e143..0caf19cd 100644 --- a/plugin.video.alfa/channels/newpct1.py +++ b/plugin.video.alfa/channels/newpct1.py @@ -49,15 +49,12 @@ def listado(item): data = re.sub(r"\n|\r|\t|\s{2}| ", "", data) patron_data='(.+?)' data_listado = scrapertools.find_single_match(data, patron_data) - logger.info("sadas"+data_listado) patron_listado='' else: patron_listado+='>' patron_listado+='(.+?)<\/h2>(.+?)<\/span><\/a><\/li>' - logger.info("sasssss"+patron_listado) - matches = scrapertools.find_multiple_matches(data_listado, patron_listado) for scrapedurl, scrapedthumbnail,scrapedtitle,scrapedquality in matches: if 'Serie' in item.title: @@ -96,8 +93,6 @@ def findvideos(item): data = httptools.downloadpage(item.url).data itemlist = servertools.find_video_items(data = data) url = scrapertools.find_single_match( data, 'location.href = "([^"]+)"') - data = httptools.downloadpage(url, follow_redirects=False).headers['location'] - data = httptools.downloadpage(url).data new_item.append(Item(url = url, title = "Torrent", server = "torrent", action = "play")) itemlist.extend(new_item) for it in itemlist: From 444b23eafe19c8646619424c056ccfa62fc747ba Mon Sep 17 00:00:00 2001 From: Alfa <30527549+alfa-addon@users.noreply.github.com> Date: Fri, 23 Feb 2018 15:45:33 -0500 Subject: [PATCH 25/28] pelisultra: nuevo canal (@Paquito Porras) --- plugin.video.alfa/channels/pelisultra.json | 88 +++++++ plugin.video.alfa/channels/pelisultra.py | 282 +++++++++++++++++++++ 2 files changed, 370 insertions(+) create mode 100644 plugin.video.alfa/channels/pelisultra.json create mode 100644 plugin.video.alfa/channels/pelisultra.py diff --git a/plugin.video.alfa/channels/pelisultra.json b/plugin.video.alfa/channels/pelisultra.json new file mode 100644 index 00000000..5e4229b7 --- /dev/null +++ b/plugin.video.alfa/channels/pelisultra.json @@ -0,0 +1,88 @@ +{ + "id": "pelisultra", + "name": "PelisUltra", + "active": true, + "adult": false, + "language": ["lat"], + "thumbnail": "https://s17.postimg.org/ft51srhjj/logoultra.png", + "categories": ["movie", "tvshow"], + "settings": [ + { + "id": "include_in_global_search", + "type": "bool", + "label": "Incluir en busqueda global", + "default": true, + "enabled": true, + "visible": true + }, + { + "id": "include_in_newest_peliculas", + "type": "bool", + "label": "Incluir en Novedades - Peliculas", + "default": true, + "enabled": true, + "visible": true + }, + { + "id": "include_in_newest_series", + "type": "bool", + "label": "Incluir en Novedades - Series", + "default": true, + "enabled": true, + "visible": true + }, + { + "id": "include_in_newest_terror", + "type": "bool", + "label": "Incluir en Novedades - terror", + "default": true, + "enabled": true, + "visible": true + }, + { + "id": "include_in_newest_latino", + "type": "bool", + "label": "Incluir en Novedades - Latino", + "default": true, + "enabled": true, + "visible": true + }, + { + "id": "perfil", + "type": "list", + "label": "Perfil de color", + "default": 2, + "enabled": true, + "visible": true, + "lvalues": [ + "Perfil 3", + "Perfil 2", + "Perfil 1", + "Ninguno" + ] + }, + { + "id": "episodios_x_pag", + "type": "list", + "label": "Episodios por página", + "default": 2, + "enabled": true, + "visible": true, + "lvalues": [ + "10", + "15", + "20", + "25", + "30" + ] + }, + { + "id": "temporada_o_todos", + "type": "bool", + "label": "Mostrar temporadas", + "default": true, + "enabled": true, + "visible": true + } + ] +} \ No newline at end of file diff --git a/plugin.video.alfa/channels/pelisultra.py b/plugin.video.alfa/channels/pelisultra.py new file mode 100644 index 00000000..d8cb2b6f --- /dev/null +++ b/plugin.video.alfa/channels/pelisultra.py @@ -0,0 +1,282 @@ +# -*- coding: utf-8 -*- +from core import httptools +from core import scrapertools +from core import servertools +from core import tmdb +from core.item import Item +from platformcode import config, logger + +__perfil__ = int(config.get_setting('perfil', 'pelisultra')) + +# Fijar perfil de color +perfil = [['0xFFFFE6CC', '0xFFFFCE9C', '0xFF994D00'], + ['0xFFA5F6AF', '0xFF5FDA6D', '0xFF11811E'], + ['0xFF58D3F7', '0xFF2E9AFE', '0xFF2E64FE']] + +if __perfil__ < 3: + color1, color2, color3 = perfil[__perfil__] +else: + color1 = color2 = color3 = "" + +host="http://www.pelisultra.com" + +def mainlist(item): + logger.info() + itemlist = [] + 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(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(Item(channel = item.channel, title = " Por género", action = "genero", url = host + "/genero/" )) + 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(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(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)) + return itemlist + +def configuracion(item): + from platformcode import platformtools + ret = platformtools.show_channel_settings() + platformtools.itemlist_refresh() + return ret + +def newest(categoria): + logger.info() + itemlist = [] + item = Item() + try: + if categoria in ["peliculas", "latino"]: + item.url = host + itemlist = peliculas(item) + elif categoria == 'terror': + item.url = host + '/genero/terror/' + itemlist = peliculas(item) + elif categoria == "series": + item.url = host + "/episodio/" + itemlist = nuevos_episodios(item) + if "Pagina" in itemlist[-1].title: + itemlist.pop() + + # Se captura la excepción, para no interrumpir al canal novedades si un canal falla + except: + import sys + for line in sys.exc_info(): + logger.error("{0}".format(line)) + return [] + + return itemlist + +def peliculas(item): + #logger.info() + logger.info(item) + itemlist = [] + data = httptools.downloadpage(item.url).data + + data2 = scrapertools.find_single_match(data,'(?s)') + + # Se saca la info + #(?s)class="ml-item.*?a href="([^"]+).*?img src="([^"]+).*?alt="([^"]+).*?class="year">(\d{4})(.*?)(\d{4})' # año + patron += '(.*?)(.*?)') + 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) + + # Pagina siguiente + patron_siguiente='class="pag_b">(.*?)') + # 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)) + + 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) + + #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})) + + # 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)) + + # InfoLabels: + tmdb.set_infoLabels_itemlist(itemlist_page, seekTmdb=True) + + 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 += ' Date: Fri, 23 Feb 2018 16:08:00 -0500 Subject: [PATCH 26/28] v.2.5.0 --- plugin.video.alfa/addon.xml | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/plugin.video.alfa/addon.xml b/plugin.video.alfa/addon.xml index 67e21088..418c82c2 100755 --- a/plugin.video.alfa/addon.xml +++ b/plugin.video.alfa/addon.xml @@ -1,5 +1,5 @@ - + @@ -19,10 +19,14 @@ [B]Estos son los cambios para esta versión:[/B] [COLOR green][B]Canales agregados y arreglos[/B][/COLOR] - » seriesblanco » rapidvideo - » kbagi » bitertv - » doomtv » miltorrents + » newpct » newpct1 + » youtube » flashx + » kbagi » pelismagnet + » gnula » animemovil + » cinecalidad » cuelgame + » divxtotal » cinemahd ¤ arreglos internos + ¤ Agradecimientos a @Paquito Porras por PelisUltra. Navega con Kodi por páginas web para ver sus videos de manera fácil. Browse web pages using Kodi From 8873559812498877add38747f989f94c48a9ab6f Mon Sep 17 00:00:00 2001 From: Alfa <30527549+alfa-addon@users.noreply.github.com> Date: Fri, 23 Feb 2018 16:15:34 -0500 Subject: [PATCH 27/28] newpct: limpieza de codigo --- plugin.video.alfa/channels/newpct.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/plugin.video.alfa/channels/newpct.py b/plugin.video.alfa/channels/newpct.py index 07e33c07..22bf446e 100755 --- a/plugin.video.alfa/channels/newpct.py +++ b/plugin.video.alfa/channels/newpct.py @@ -97,6 +97,4 @@ def findvideos(item): itemlist.extend(new_item) for it in itemlist: it.channel = item.channel - - scrapertools.printMatches(itemlist) - return itemlist \ No newline at end of file + return itemlist From 3af2e191c99d5ca9fcb01f80b66193722a96154d Mon Sep 17 00:00:00 2001 From: Alfa <30527549+alfa-addon@users.noreply.github.com> Date: Fri, 23 Feb 2018 16:20:02 -0500 Subject: [PATCH 28/28] newpct1: limpieza de codigo --- plugin.video.alfa/channels/newpct1.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/plugin.video.alfa/channels/newpct1.py b/plugin.video.alfa/channels/newpct1.py index 0caf19cd..b6bcc865 100644 --- a/plugin.video.alfa/channels/newpct1.py +++ b/plugin.video.alfa/channels/newpct1.py @@ -97,6 +97,4 @@ def findvideos(item): itemlist.extend(new_item) for it in itemlist: it.channel = item.channel - - scrapertools.printMatches(itemlist) - return itemlist \ No newline at end of file + return itemlist
Peliculas Castellano - Calidad: DVDRIP AC3 5.1 - Tamaño: 1.1 GB - Idioma : Español Castellano -