diff --git a/plugin.video.alfa/addon.xml b/plugin.video.alfa/addon.xml index eb2073f8..88e1185a 100755 --- a/plugin.video.alfa/addon.xml +++ b/plugin.video.alfa/addon.xml @@ -1,5 +1,5 @@ - + @@ -19,13 +19,12 @@ [B]Estos son los cambios para esta versión:[/B] [COLOR green][B]Canales agregados y arreglos[/B][/COLOR] - » gnula » pelismagnet - » allcalidad » streamcherry - » streamango » pepecine - » mejortorrent » torrentrapid - » cinecalidad + » allcalidad » inkaseries + » animemovil » descargas2020 + » descargasmix » mispelisyseries ¤ arreglos internos - ¤ Agradecimientos a @prpeaprendiz y @ikarywarriors por colaborar. + + ¤ Agradecimientos a @GeorgeRamga por animemovil. Navega con Kodi por páginas web para ver sus videos de manera fácil. Browse web pages using Kodi diff --git a/plugin.video.alfa/channels/allcalidad.py b/plugin.video.alfa/channels/allcalidad.py index 97ac059a..93bf520f 100755 --- a/plugin.video.alfa/channels/allcalidad.py +++ b/plugin.video.alfa/channels/allcalidad.py @@ -134,7 +134,7 @@ def findvideos(item): url = httptools.downloadpage(url, follow_redirects=False, only_headers=True).headers.get("location", "") if "youtube" in url: titulo = "[COLOR = yellow]Ver trailer: %s[/COLOR]" - if "ad.js" in url or "script" in url: + if "ad.js" in url or "script" in url or "jstags.js" in url: continue elif "vimeo" in url: url += "|" + "http://www.allcalidad.com" diff --git a/plugin.video.alfa/channels/animemovil.py b/plugin.video.alfa/channels/animemovil.py index 632b14b4..8d84eb5e 100644 --- a/plugin.video.alfa/channels/animemovil.py +++ b/plugin.video.alfa/channels/animemovil.py @@ -299,11 +299,10 @@ def findvideos(item): stream_info = 'http:%s/%s/%s?expire=%s&callback=%s&signature=%s&last_modify=%s' % \ (access_point, id, server, expire, callback, signature, last_modify) - dict_stream = jsontools.load(httptools.downloadpage(stream_info).data) - - if dict_stream['status']: - kind = dict_stream['result']['kind'] - try: + try: + dict_stream = jsontools.load(httptools.downloadpage(stream_info).data) + if dict_stream['status']: + kind = dict_stream['result']['kind'] if kind == 'iframe': url = dict_stream['result']['src'] title = '%s (%s)' % (item.title, server) @@ -337,8 +336,8 @@ def findvideos(item): if url != '': itemlist.append(item.clone(title=title, url=url, action='play')) - except: - pass + except: + pass itemlist = servertools.get_servers_itemlist(itemlist) return itemlist diff --git a/plugin.video.alfa/channels/clasicofilm.py b/plugin.video.alfa/channels/clasicofilm.py index c3efc2fe..084e3661 100755 --- a/plugin.video.alfa/channels/clasicofilm.py +++ b/plugin.video.alfa/channels/clasicofilm.py @@ -11,6 +11,7 @@ from core import tmdb from core import videolibrarytools from core.item import Item from platformcode import config, platformtools, logger +from channelselector import get_thumb host = "http://www.clasicofilm.com/" # Configuracion del canal @@ -35,16 +36,13 @@ def mainlist(item): itemlist.append(item.clone(title="Películas", text_color=color2, action="", text_bold=True)) itemlist.append(item.clone(action="peliculas", title=" Novedades", url="http://www.clasicofilm.com/feeds/posts/summary?start-index=1&max-results=20&alt=json-in-script&callback=finddatepost", - 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="generos", title=" Por géneros", url=host, - thumbnail="https://raw.githubusercontent.com/master-1970/resources/master/images/genres" - "/0/Genre.png", - text_color=color1)) + thumbnail=get_thumb('genres', auto=True), text_color=color1)) 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/descargacineclasico.py b/plugin.video.alfa/channels/descargacineclasico.py index 89236676..8bfe9c9b 100755 --- a/plugin.video.alfa/channels/descargacineclasico.py +++ b/plugin.video.alfa/channels/descargacineclasico.py @@ -27,12 +27,14 @@ def mainlist(item): itemlist = [] itemlist.append(Item(channel=item.channel, title="Últimas agregadas", action="agregadas", - url="http://www.descargacineclasico.net/", viewmode="movie_with_plot")) + url="http://www.descargacineclasico.net/", viewmode="movie_with_plot", + thumbnail=get_thumb('last', auto=True))) itemlist.append(Item(channel=item.channel, title="Listado por género", action="porGenero", - url="http://www.descargacineclasico.net/")) + url="http://www.descargacineclasico.net/", + thumbnail=get_thumb('genres', auto=True))) itemlist.append( Item(channel=item.channel, title="Buscar", action="search", url="http://www.descargacineclasico.net/", - thumbnail=thumb_buscar)) + thumbnail=get_thumb('search', auto=True))) return itemlist diff --git a/plugin.video.alfa/channels/newpct1.json b/plugin.video.alfa/channels/descargas2020.json similarity index 58% rename from plugin.video.alfa/channels/newpct1.json rename to plugin.video.alfa/channels/descargas2020.json index 26b6d67f..d413b2e0 100755 --- a/plugin.video.alfa/channels/newpct1.json +++ b/plugin.video.alfa/channels/descargas2020.json @@ -1,11 +1,11 @@ { - "id": "newpct1", - "name": "Newpct1", + "id": "descargas2020", + "name": "Descargas2020", "active": true, "adult": false, "language": ["cast", "lat"], - "thumbnail": "newpct1.png", - "banner": "newpct1.png", + "thumbnail": "http://descargas2020.com/d20/library/content/template/images/_logod2020.png", + "banner": "", "categories": [ "movie", "tvshow", @@ -28,6 +28,14 @@ "default": true, "enabled": true, "visible": true + }, + { + "id": "include_in_newest_4k", + "type": "bool", + "label": "Incluir en Novedades - 4K", + "default": true, + "enabled": true, + "visible": true } ] } \ No newline at end of file diff --git a/plugin.video.alfa/channels/descargas2020.py b/plugin.video.alfa/channels/descargas2020.py new file mode 100644 index 00000000..9cabc73a --- /dev/null +++ b/plugin.video.alfa/channels/descargas2020.py @@ -0,0 +1,223 @@ +# -*- coding: utf-8 -*- + +import re +import urllib +import urlparse + +from core import servertools +from core import scrapertools +from core.item import Item +from platformcode import logger +from core import httptools +from channelselector import get_thumb + +Host='http://descargas2020.com' + + +def mainlist(item): + logger.info() + + itemlist = [] + itemlist.append(Item(channel=item.channel, action="submenu", title="Películas",url=Host+"/peliculas/", + thumbnail=get_thumb('movies', auto=True))) + itemlist.append(Item(channel=item.channel, action="submenu", title="Series",url=Host+"/series/", + thumbnail=get_thumb('tvshows', auto=True))) + #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", url= Host+'/buscar', + thumbnail=get_thumb('search', auto=True))) + return itemlist + +def submenu(item): + logger.info() + itemlist = [] + + 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: + itemlist.append(item.clone(title=scrapedtitle, url=scrapedurl,action="listado")) + if 'peliculas' in item.url: + new_item = item.clone(title='Peliculas 4K', url=Host+'/buscar', post='q=4k', action='listado2', + pattern='buscar-list') + itemlist.append(new_item) + return itemlist + + +def listado(item): + logger.info() + 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_listado='
  • .*?>[/COLOR]": + 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 \ No newline at end of file diff --git a/plugin.video.alfa/channels/descargasmix.json b/plugin.video.alfa/channels/descargasmix.json index 95890119..1955280c 100644 --- a/plugin.video.alfa/channels/descargasmix.json +++ b/plugin.video.alfa/channels/descargasmix.json @@ -51,6 +51,30 @@ "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_anime", + "type": "bool", + "label": "Incluir en Novedades - anime", + "default": true, + "enabled": true, + "visible": true + }, + { + "id": "include_in_newest_4k", + "type": "bool", + "label": "Incluir en Novedades - 4K", + "default": true, + "enabled": true, + "visible": true } ] } \ No newline at end of file diff --git a/plugin.video.alfa/channels/descargasmix.py b/plugin.video.alfa/channels/descargasmix.py index 41e5f030..5366a331 100644 --- a/plugin.video.alfa/channels/descargasmix.py +++ b/plugin.video.alfa/channels/descargasmix.py @@ -8,7 +8,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", "descargasmix") __perfil__ = config.get_setting("perfil", "descargasmix") @@ -32,16 +32,21 @@ def mainlist(item): if host_check and host_check.startswith("http"): config.set_setting("host", host_check, "descargasmix") - itemlist.append(item.clone(title="Películas", action="lista", fanart="http://i.imgur.com/c3HS8kj.png")) - itemlist.append(item.clone(title="Series", action="lista_series", fanart="http://i.imgur.com/9loVksV.png")) + itemlist.append(item.clone(title="Películas", action="lista", fanart="http://i.imgur.com/c3HS8kj.png", + thumbnail=get_thumb('movies', auto=True))) + itemlist.append(item.clone(title="Series", action="lista_series", fanart="http://i.imgur.com/9loVksV.png", + thumbnail=get_thumb('tvshows', auto=True))) itemlist.append(item.clone(title="Documentales", action="entradas", url="%s/documentales/" % host, - fanart="http://i.imgur.com/Q7fsFI6.png")) + fanart="http://i.imgur.com/Q7fsFI6.png", + thumbnail=get_thumb('documentaries', auto=True))) itemlist.append(item.clone(title="Anime", action="entradas", url="%s/anime/" % host, - fanart="http://i.imgur.com/whhzo8f.png")) + fanart="http://i.imgur.com/whhzo8f.png", + thumbnail=get_thumb('anime', auto=True))) itemlist.append(item.clone(title="Deportes", action="entradas", url="%s/deportes/" % host, - fanart="http://i.imgur.com/ggFFR8o.png")) + fanart="http://i.imgur.com/ggFFR8o.png", + thumbnail=get_thumb('deporte', 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))) itemlist.append(item.clone(action="setting_channel", title="Configurar canal...", text_color="gold", folder=False)) return itemlist @@ -548,19 +553,18 @@ def newest(categoria): try: if categoria == 'torrent': item.url = host+'/peliculas' - itemlist = entradas(item) - if itemlist[-1].title == ">> Siguiente": - itemlist.pop() + if categoria == 'series': item.url = host + '/series' - itemlist.extend(entradas(item)) - if itemlist[-1].title == ">> Siguiente": - itemlist.pop() + if categoria == '4k': + item.url = host + '/peliculas/4k' + itemlist.extend(entradas(item)) + + if categoria == 'anime': item.url = host + '/anime' - itemlist.extend(entradas(item)) if itemlist[-1].title == ">> Siguiente": diff --git a/plugin.video.alfa/channels/divxtotal.py b/plugin.video.alfa/channels/divxtotal.py index 36aa5931..57176a74 100644 --- a/plugin.video.alfa/channels/divxtotal.py +++ b/plugin.video.alfa/channels/divxtotal.py @@ -9,6 +9,7 @@ from core import scrapertools from core import tmdb from core.item import Item from platformcode import config, logger +from channelselector import get_thumb header = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64; rv:51.0) Gecko/20100101 Firefox/51.0'} host = "http://www.divxtotal.co" @@ -20,17 +21,17 @@ def mainlist(item): logger.info() itemlist = [] itemlist.append(item.clone(title="[COLOR orange][B]Películas[/B][/COLOR]", action="scraper", - url = host + "/peliculas/", thumbnail="http://imgur.com/A4zN3OP.png", + url = host + "/peliculas/", thumbnail=get_thumb('movies', auto=True), fanart="http://imgur.com/fdntKsy.jpg", contentType="movie")) itemlist.append(item.clone(title="[COLOR orange][B] Películas HD[/B][/COLOR]", action="scraper", url = host + "/peliculas-hd/", thumbnail="http://imgur.com/A4zN3OP.png", fanart="http://imgur.com/fdntKsy.jpg", contentType="movie")) itemlist.append(itemlist[-1].clone(title="[COLOR orange][B]Series[/B][/COLOR]", action="scraper", - url = host + "/series/", thumbnail="http://imgur.com/GPX2wLt.png", + url = host + "/series/", thumbnail=get_thumb('tvshows', auto=True), contentType="tvshow")) itemlist.append(itemlist[-1].clone(title="[COLOR orangered][B]Buscar[/B][/COLOR]", action="search", - thumbnail="http://imgur.com/aiJmi3Z.png")) + thumbnail=get_thumb('search', auto=True))) return itemlist diff --git a/plugin.video.alfa/channels/documentalesonline.py b/plugin.video.alfa/channels/documentalesonline.py index f6ef436e..ee8ce0f5 100755 --- a/plugin.video.alfa/channels/documentalesonline.py +++ b/plugin.video.alfa/channels/documentalesonline.py @@ -6,6 +6,7 @@ from core import httptools from core import scrapertools from core.item import Item from platformcode import logger +from channelselector import get_thumb HOST = "http://documentales-online.com/" @@ -15,15 +16,20 @@ def mainlist(item): itemlist = list() - itemlist.append(Item(channel=item.channel, title="Novedades", action="listado", url=HOST)) - itemlist.append(Item(channel=item.channel, title="Destacados", action="seccion", url=HOST, extra="destacados")) - itemlist.append(Item(channel=item.channel, title="Series Destacadas", action="seccion", url=HOST, extra="series")) + itemlist.append(Item(channel=item.channel, title="Novedades", action="listado", url=HOST, + thumbnail=get_thumb('newest', auto=True))) + itemlist.append(Item(channel=item.channel, title="Destacados", action="seccion", url=HOST, extra="destacados", + thumbnail=get_thumb('hot', auto=True))) + itemlist.append(Item(channel=item.channel, title="Series", action="seccion", url=HOST, extra="series", + thumbnail=get_thumb('tvshows', auto=True))) + itemlist.append(Item(channel=item.channel, title="Categorías", action="categorias", url=HOST, + thumbnail=get_thumb('categories', auto=True))) # itemlist.append(Item(channel=item.channel, title="Top 100", action="categorias", url=HOST)) # itemlist.append(Item(channel=item.channel, title="Populares", action="categorias", url=HOST)) - itemlist.append(Item(channel=item.channel, title="Buscar por:")) - itemlist.append(Item(channel=item.channel, title=" Título", action="search")) - itemlist.append(Item(channel=item.channel, title=" Categorías", action="categorias", url=HOST)) + itemlist.append(Item(channel=item.channel, title="Buscar", action="search", + thumbnail=get_thumb('search', auto=True))) + # itemlist.append(Item(channel=item.channel, title=" Series y Temas", action="categorias", url=HOST)) return itemlist diff --git a/plugin.video.alfa/channels/doomtv.py b/plugin.video.alfa/channels/doomtv.py index 62aa0f89..c262503a 100644 --- a/plugin.video.alfa/channels/doomtv.py +++ b/plugin.video.alfa/channels/doomtv.py @@ -13,6 +13,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'} list_language = IDIOMAS.values() @@ -62,7 +63,7 @@ def mainlist(item): 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='%s%s'%(host,'peliculas/page/1') )) @@ -70,7 +71,7 @@ def mainlist(item): itemlist.append( item.clone(title="Generos", action="seccion", - thumbnail='https://s3.postimg.org/5s9jg2wtf/generos.png', + thumbnail=get_thumb('genres', auto=True), fanart='https://s3.postimg.org/5s9jg2wtf/generos.png', url='%s%s' % (host, 'peliculas/page/1'), )) @@ -78,7 +79,7 @@ def mainlist(item): itemlist.append( item.clone(title="Mas Vistas", action="lista", - thumbnail='https://s9.postimg.org/wmhzu9d7z/vistas.png', + thumbnail=get_thumb('more watched', auto=True), fanart='https://s9.postimg.org/wmhzu9d7z/vistas.png', url='%s%s'%(host,'top-imdb/page/1'), )) @@ -87,7 +88,7 @@ def mainlist(item): item.clone(title="Buscar", action="search", url='http://doomtv.net/?s=', - 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/downloads.py b/plugin.video.alfa/channels/downloads.py index 08317038..98c2836b 100755 --- a/plugin.video.alfa/channels/downloads.py +++ b/plugin.video.alfa/channels/downloads.py @@ -459,10 +459,12 @@ def download_from_url(url, item): return {"downloadStatus": STATUS_CODES.error} # Obtenemos la ruta de descarga y el nombre del archivo + item.downloadFilename = item.downloadFilename.replace('/','-') download_path = filetools.dirname(filetools.join(DOWNLOAD_PATH, item.downloadFilename)) file_name = filetools.basename(filetools.join(DOWNLOAD_PATH, item.downloadFilename)) # Creamos la carpeta si no existe + if not filetools.exists(download_path): filetools.mkdir(download_path) diff --git a/plugin.video.alfa/channels/estadepelis.py b/plugin.video.alfa/channels/estadepelis.py index 1b4fc936..59232ad8 100755 --- a/plugin.video.alfa/channels/estadepelis.py +++ b/plugin.video.alfa/channels/estadepelis.py @@ -10,6 +10,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.estadepelis.com/' headers = [['User-Agent', 'Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Firefox/45.0'], @@ -60,21 +61,20 @@ def mainlist(item): itemlist.append(item.clone(title="Peliculas", action="menupeliculas", - 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.clone(title="Series", action="lista", - thumbnail='https://s27.postimg.org/iahczwgrn/series.png', + thumbnail=get_thumb('tvshows', auto=True), fanart='https://s27.postimg.org/iahczwgrn/series.png', url=host + 'lista-de-series/', extra='series' )) itemlist.append(item.clone(title="Doramas", - action="lista", - thumbnail='https://s15.postimg.org/sjcthoa6z/doramas.png', + action="lista", thumbnail=get_thumb('doramas', auto=True), fanart='https://s15.postimg.org/sjcthoa6z/doramas.png', url=host + 'lista-de-doramas/', extra='series' @@ -82,7 +82,7 @@ def mainlist(item): itemlist.append(item.clone(title="Documentales", action="lista", - thumbnail='https://s16.postimg.org/7xjj4bmol/documental.png', + thumbnail=get_thumb('documentaries', auto=True), fanart='https://s16.postimg.org/7xjj4bmol/documental.png', url=host + 'lista-de-documentales/', extra='peliculas' @@ -91,7 +91,7 @@ def mainlist(item): itemlist.append(item.clone(title="Buscar", action="search", url=host + 'search?q=', - thumbnail='https://s30.postimg.org/pei7txpa9/buscar.png', + thumbnail=get_thumb('search', auto=True), fanart='https://s30.postimg.org/pei7txpa9/buscar.png' )) @@ -107,7 +107,7 @@ def menupeliculas(item): 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 + 'lista-de-peliculas/', extra='peliculas' @@ -115,7 +115,7 @@ def menupeliculas(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, extra='peliculas' @@ -123,7 +123,7 @@ def menupeliculas(item): itemlist.append(item.clone(title="Generos", action="generos", - thumbnail='https://s3.postimg.org/5s9jg2wtf/generos.png', + thumbnail=get_thumb('genres', auto=True), fanart='https://s3.postimg.org/5s9jg2wtf/generos.png', url=host, extra='peliculas' diff --git a/plugin.video.alfa/channels/gnula.py b/plugin.video.alfa/channels/gnula.py index c7af0191..1b129595 100755 --- a/plugin.video.alfa/channels/gnula.py +++ b/plugin.video.alfa/channels/gnula.py @@ -5,6 +5,7 @@ from core import scrapertools from core import servertools from core.item import Item from platformcode import config, logger +from channelselector import get_thumb host = "http://gnula.nu/" host_search = "https://www.googleapis.com/customsearch/v1element?key=AIzaSyCVAXiUzRYsML1Pv6RwSG1gunmMikTzQqY&rsz=small&num=20&hl=es&prettyPrint=false&source=gcsc&gss=.es&sig=45e50696e04f15ce6310843f10a3a8fb&cx=014793692610101313036:vwtjajbclpq&q=%s&cse_tok=%s&googlehost=www.google.com&callback=google.search.Search.apiary10745&nocache=1519145965573&start=0" @@ -15,14 +16,18 @@ def mainlist(item): logger.info() itemlist = [] itemlist.append(Item(channel=item.channel, title="Estrenos", action="peliculas", - url= host +"peliculas-online/lista-de-peliculas-online-parte-1/", viewmode="movie")) + url= host +"peliculas-online/lista-de-peliculas-online-parte-1/", viewmode="movie", + thumbnail=get_thumb('premieres', auto=True),)) itemlist.append( - Item(channel=item.channel, title="Generos", action="generos", url= host + "generos/lista-de-generos/")) + Item(channel=item.channel, title="Generos", action="generos", url= host + "generos/lista-de-generos/", + thumbnail=get_thumb('genres', auto=True),)) itemlist.append(Item(channel=item.channel, title="Recomendadas", action="peliculas", - url= host + "peliculas-online/lista-de-peliculas-recomendadas/", viewmode="movie")) + url= host + "peliculas-online/lista-de-peliculas-recomendadas/", viewmode="movie", + thumbnail=get_thumb('recomended', auto=True),)) itemlist.append(Item(channel = item.channel, action = "")) itemlist.append( - Item(channel=item.channel, title="Buscar", action="search", url = host_search)) + Item(channel=item.channel, title="Buscar", action="search", url = host_search, + thumbnail=get_thumb('search', auto=True),)) return itemlist diff --git a/plugin.video.alfa/channels/grantorrent.py b/plugin.video.alfa/channels/grantorrent.py index dc28ca54..8ce6ca34 100644 --- a/plugin.video.alfa/channels/grantorrent.py +++ b/plugin.video.alfa/channels/grantorrent.py @@ -17,8 +17,8 @@ __modo_grafico__ = config.get_setting('modo_grafico', 'grantorrent') def mainlist(item): logger.info() - thumb_movie = get_thumb("channels_movie.png") - thumb_tvshow = get_thumb("channels_tvshow.png") + thumb_movie = get_thumb("movies", auto=True) + thumb_tvshow = get_thumb("tvshows", auto=True) itemlist = list() itemlist.append( diff --git a/plugin.video.alfa/channels/hdfull.py b/plugin.video.alfa/channels/hdfull.py index 08eee38d..180a85ec 100644 --- a/plugin.video.alfa/channels/hdfull.py +++ b/plugin.video.alfa/channels/hdfull.py @@ -12,6 +12,7 @@ from core import servertools from core.item import Item from platformcode import config, logger from platformcode import platformtools +from channelselector import get_thumb host = "https://hdfull.me" @@ -43,9 +44,12 @@ def login(): def mainlist(item): logger.info() itemlist = [] - itemlist.append(Item(channel=item.channel, action="menupeliculas", title="Películas", url=host, folder=True)) - itemlist.append(Item(channel=item.channel, action="menuseries", title="Series", url=host, folder=True)) - itemlist.append(Item(channel=item.channel, action="search", title="Buscar...")) + itemlist.append(Item(channel=item.channel, action="menupeliculas", title="Películas", url=host, folder=True, + thumbnail=get_thumb('movies', auto=True),)) + itemlist.append(Item(channel=item.channel, action="menuseries", title="Series", url=host, folder=True, + thumbnail=get_thumb('tvshows', auto=True),)) + itemlist.append(Item(channel=item.channel, action="search", title="Buscar...", + thumbnail=get_thumb('search', auto=True),)) if not account: itemlist.append(Item(channel=item.channel, title="[COLOR orange][B]Habilita tu cuenta para activar los items de usuario...[/B][/COLOR]", action="settingCanal", url="")) diff --git a/plugin.video.alfa/channels/idocumentales.json b/plugin.video.alfa/channels/idocumentales.json deleted file mode 100755 index 74ddf6ef..00000000 --- a/plugin.video.alfa/channels/idocumentales.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "id": "idocumentales", - "name": "Idocumentales", - "active": true, - "adult": false, - "language": ["cast", "lat"], - "thumbnail": "https://s27.postimg.org/pjq3y552b/idocumentales.png", - "banner": "https://s16.postimg.org/6d8bh1z1x/idocumentales_banner.png", - "categories": [ - "documentary" - ], - "settings": [ - { - "id": "include_in_global_search", - "type": "bool", - "label": "Incluir en busqueda global", - "default": true, - "enabled": true, - "visible": true - }, - { - "id": "include_in_newest_documentales", - "type": "bool", - "label": "Incluir en Novedades - Documentales", - "default": true, - "enabled": true, - "visible": true - } - ] -} \ No newline at end of file diff --git a/plugin.video.alfa/channels/idocumentales.py b/plugin.video.alfa/channels/idocumentales.py deleted file mode 100755 index ff5b6995..00000000 --- a/plugin.video.alfa/channels/idocumentales.py +++ /dev/null @@ -1,147 +0,0 @@ -# -*- coding: utf-8 -*- - -import re - -from core import httptools -from core import scrapertools -from core import tmdb -from core.item import Item -from platformcode import logger - -host = 'http://www.idocumentales.net' - - -def mainlist(item): - logger.info() - - itemlist = [] - - itemlist.append(item.clone(title="Todas", action="lista", thumbnail='https://s18.postimg.org/fwvaeo6qh/todas.png', - fanart='https://s18.postimg.org/fwvaeo6qh/todas.png', url=host)) - - itemlist.append(Item(channel=item.channel, title="Generos", action="generos", url=host, - thumbnail='https://s3.postimg.org/5s9jg2wtf/generos.png', - fanart='https://s3.postimg.org/5s9jg2wtf/generos.png')) - - itemlist.append(Item(channel=item.channel, title="Buscar", action="search", url=host + '/?s=', - thumbnail='https://s30.postimg.org/pei7txpa9/buscar.png', - fanart='https://s30.postimg.org/pei7txpa9/buscar.png')) - - return itemlist - - -def lista(item): - logger.info() - - itemlist = [] - data = httptools.downloadpage(item.url).data - data = re.sub(r'"|\n|\r|\t| |
    |\s{2,}', "", data) - patron = '
  • (.*?)<\/span><\/div>
    .*?' - patron += '

    .*?<\/a><\/h3>(.*?)<\/span>

    (.*?)<\/p>' - matches = re.compile(patron, re.DOTALL).findall(data) - scrapertools.printMatches(matches) - - for scrapedthumbnail, scrapedtitle, scrapedurl, scrapedyear, scrapedplot in matches: - url = scrapedurl - title = scrapertools.decodeHtmlentities(scrapedtitle) - thumbnail = scrapedthumbnail - plot = scrapedplot - year = scrapedyear - itemlist.append( - Item(channel=item.channel, action="findvideos", title=title, fulltitle=title, url=url, thumbnail=thumbnail, - plot=plot, contentSerieName=title, infoLabels={'year': year})) - tmdb.set_infoLabels_itemlist(itemlist, seekTmdb=True) - - # Paginacion - - if itemlist != []: - actual_page_url = item.url - next_page = scrapertools.find_single_match(data, '') - if next_page != '': - itemlist.append(Item(channel=item.channel, action="busqueda", title='Siguiente >>>', url=next_page, - thumbnail='https://s16.postimg.org/9okdu7hhx/siguiente.png')) - - return itemlist - - -def search(item, texto): - logger.info() - texto = texto.replace(" ", "+") - item.url = item.url + texto - if texto != '': - return busqueda(item) - - -def newest(categoria): - logger.info() - itemlist = [] - item = Item() - try: - if categoria == 'documentales': - item.url = host - - itemlist = lista(item) - if itemlist[-1].title == 'Siguiente >>>': - itemlist.pop() - except: - import sys - for line in sys.exc_info(): - logger.error("{0}".format(line)) - return [] - - return itemlist diff --git a/plugin.video.alfa/channels/inkapelis.py b/plugin.video.alfa/channels/inkapelis.py index 9c05a285..439b0d48 100644 --- a/plugin.video.alfa/channels/inkapelis.py +++ b/plugin.video.alfa/channels/inkapelis.py @@ -8,7 +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 __modo_grafico__ = config.get_setting("modo_grafico", "inkapelis") __perfil__ = config.get_setting("perfil", "inkapelis") @@ -24,11 +24,12 @@ def mainlist(item): itemlist = [] itemlist.append(item.clone(title="Novedades", action="entradas", url="http://www.inkapelis.com/", - extra="Novedades", text_color=color1)) + extra="Novedades", text_color=color1, thumbnail=get_thumb('newest', auto=True))) itemlist.append(item.clone(title="Estrenos", action="entradas", url="http://www.inkapelis.com/genero/estrenos/", - text_color=color1)) - itemlist.append(item.clone(title="Géneros", action="generos", url="http://www.inkapelis.com/", text_color=color1)) - itemlist.append(item.clone(title="Buscar...", action="search", text_color=color1)) + text_color=color1, thumbnail=get_thumb('premieres', auto=True))) + itemlist.append(item.clone(title="Géneros", action="generos", url="http://www.inkapelis.com/", text_color=color1, + thumbnail=get_thumb('genres', auto=True),)) + itemlist.append(item.clone(title="Buscar...", action="", text_color=color1)) itemlist.append(item.clone(action="", title="")) itemlist.append( item.clone(action="filtro", title="Filtrar películas", url="http://www.inkapelis.com/?s=", text_color=color1)) diff --git a/plugin.video.alfa/channels/inkaseries.json b/plugin.video.alfa/channels/inkaseries.json new file mode 100644 index 00000000..c8933fe1 --- /dev/null +++ b/plugin.video.alfa/channels/inkaseries.json @@ -0,0 +1,36 @@ +{ + "id": "inkaseries", + "name": "InkaSeries", + "active": true, + "adult": false, + "language": ["lat", "cast"], + "thumbnail": "https://www.inkaseries.net/wp-content/uploads/2016/08/logo-inkaseries-chico.png", + "banner": "", + "categories": [ + "tvshow" + ], + "settings": [ + { + "id": "include_in_global_search", + "type": "bool", + "label": "Incluir en busqueda global", + "default": false, + "enabled": false, + "visible": false + }, + { + "id": "filter_languages", + "type": "list", + "label": "Mostrar enlaces en idioma...", + "default": 0, + "enabled": true, + "visible": true, + "lvalues": [ + "No filtrar", + "LAT", + "CAST", + "VOSE" + ] + } + ] +} \ No newline at end of file diff --git a/plugin.video.alfa/channels/inkaseries.py b/plugin.video.alfa/channels/inkaseries.py new file mode 100644 index 00000000..320c2de0 --- /dev/null +++ b/plugin.video.alfa/channels/inkaseries.py @@ -0,0 +1,210 @@ +# -*- coding: utf-8 -*- +# -*- Channel InkaSeries -*- +# -*- Created for Alfa-addon -*- +# -*- By the Alfa Develop Group -*- + +import re + +from channels import autoplay +from channels import filtertools +from core import httptools +from core import scrapertools +from core import servertools +from core import tmdb +from core.item import Item +from platformcode import config, logger +from channelselector import get_thumb + +host = 'https://www.inkaseries.net/' + +IDIOMAS = {'Latino': 'LAT', 'Castellano':'CAST', 'Subtitulado': 'VOSE'} +list_language = IDIOMAS.values() +list_quality = [] +list_servers = ['openload', 'gamovideo', 'streamplay', 'flashx', 'streamito', 'streamango', 'vidoza'] + +def get_source(url): + logger.info() + data = httptools.downloadpage(url).data + data = re.sub(r'"|\n|\r|\t| |
    |\s{2,}', "", data) + return data + +def mainlist(item): + logger.info() + + autoplay.init(item.channel, list_servers, list_quality) + itemlist = [] + + itemlist.append(Item(channel= item.channel, title="Todas", action="list_all", url=host + 'ultimas-series-agregadas/', + thumbnail=get_thumb('all', auto=True))) + itemlist.append(Item(channel= item.channel, title="Generos", action="genres", url=host + 'ultimas-series-agregadas/', + thumbnail=get_thumb('genres', auto=True))) + itemlist.append(Item(channel= item.channel, title="Recomendadas", action="list_all", + url=host + 'ultimas-series-agregadas/', type='recomended', + thumbnail=get_thumb('recomended', auto=True))) + itemlist.append(Item(channel=item.channel, title="Buscar", action="search", url=host+'?s=', + thumbnail=get_thumb('search', auto=True))) + + autoplay.show_option(item.channel, itemlist) + + return itemlist + + +def list_all(item): + logger.info() + + itemlist = [] + data = get_source(item.url) + if item.type != 'search': + if item.type == 'recomended': + class_type = 'list_mt' + else: + class_type = 'info' + + patron = '
    ') + if next_page != '': + itemlist.append(Item(channel=item.channel, action="list_all", title='Siguiente >>>', url=next_page, + thumbnail='https://s16.postimg.org/9okdu7hhx/siguiente.png')) + return itemlist + + +def seasons(item): + logger.info() + itemlist = [] + + data = get_source(item.url) + + patron = ' Temporada (\d+) ' + + matches = re.compile(patron, re.DOTALL).findall(data) + infoLabels = item.infoLabels + for scrapedseason in matches: + contentSeasonNumber = scrapedseason + title = 'Temporada %s' % scrapedseason + infoLabels['season'] = contentSeasonNumber + + itemlist.append(Item(channel=item.channel, action='episodesxseason', url=item.url, title=title, + contentSeasonNumber=contentSeasonNumber, infoLabels=infoLabels)) + tmdb.set_infoLabels_itemlist(itemlist, seekTmdb=True) + + if config.get_videolibrary_support() and len(itemlist) > 0: + itemlist.append( + Item(channel=item.channel, title='[COLOR yellow]Añadir esta serie a la videoteca[/COLOR]', url=item.url, + action="add_serie_to_library", extra="all_episodes", contentSerieName=item.contentSerieName, + extra1='library')) + + return itemlist + +def all_episodes(item): + logger.info() + itemlist = [] + templist = seasons(item) + for tempitem in templist: + itemlist += episodesxseason(tempitem) + return itemlist + +def episodesxseason(item): + logger.info() + itemlist = [] + data = get_source(item.url) + + if item.extra1 != 'library': + patron = '.*?' % item.contentSeasonNumber + else: + patron = '.*?' + + matches = re.compile(patron, re.DOTALL).findall(data) + infoLabels = item.infoLabels + for scrapedurl, dataep in matches: + url = scrapedurl + dataep = dataep.split(' - ') + contentEpisodeNumber = dataep[0] + try: + title = '%sx%s - %s' % (item.infoLabels['season'], contentEpisodeNumber, dataep[1]) + except: + title = 'episodio %s' % contentEpisodeNumber + infoLabels['episode'] = contentEpisodeNumber + infoLabels = item.infoLabels + + itemlist.append(Item(channel=item.channel, action="findvideos", title=title, url=url, + contentEpisodeNumber=contentEpisodeNumber, infoLabels=infoLabels)) + + tmdb.set_infoLabels_itemlist(itemlist, seekTmdb=True) + return itemlist + + +def genres(item): + logger.info() + + itemlist = [] + norep = [] + data = get_source(item.url) + patron = ']+)>(.*?)' + matches = re.compile(patron, re.DOTALL).findall(data) + + for scrapedurl, scrapedtitle in matches: + + url = scrapedurl + title = scrapedtitle.capitalize() + itemactual = Item(channel=item.channel, action='list_all', title=title, url=url) + + if title not in norep: + itemlist.append(itemactual) + norep.append(itemactual.title) + return itemlist + +def findvideos(item): + logger.info() + + itemlist = [] + data = get_source(item.url) + patron = '.*?(.*?).*?' + matches = re.compile(patron, re.DOTALL).findall(data) + + for url, language in matches: + new_item = Item(channel=item.channel, title='%s [%s]', url=url, language=IDIOMAS[language], action='play', + infoLabels=item.infoLabels) + itemlist.append(new_item) + itemlist = servertools.get_servers_itemlist(itemlist, lambda x: x.title % (x.server.capitalize(), x.language)) + + # Requerido para FilterTools + tmdb.set_infoLabels_itemlist(itemlist, True) + itemlist = filtertools.get_links(itemlist, item, list_language) + + # Requerido para AutoPlay + + autoplay.start(itemlist, item) + + + + return itemlist + + +def search(item, texto): + logger.info() + texto = texto.replace(" ", "+") + item.url = item.url + texto + item.type = 'search' + if texto != '': + return list_all(item) diff --git a/plugin.video.alfa/channels/locopelis.py b/plugin.video.alfa/channels/locopelis.py index b87f0a4e..f1dfd8e8 100755 --- a/plugin.video.alfa/channels/locopelis.py +++ b/plugin.video.alfa/channels/locopelis.py @@ -10,7 +10,7 @@ from core import scrapertools from core import tmdb from core.item import Item from platformcode import config, logger - +from channelselector import get_thumb IDIOMAS = {'Latino': 'Latino', 'Español': 'Español', 'Sub español': 'VOS'} list_language = IDIOMAS.values() list_quality = [] @@ -33,7 +33,7 @@ def mainlist(item): title="Peliculas", action="todas", url=host, - thumbnail='https://s8.postimg.org/6wqwy2c2t/peliculas.png', + thumbnail=get_thumb('movies', auto=True), fanart='https://s8.postimg.org/6wqwy2c2t/peliculas.png' )) @@ -41,15 +41,14 @@ def mainlist(item): 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(channel=item.channel, title="Alfabetico", action="letras", - url=host, - thumbnail='https://s17.postimg.org/fwi1y99en/a-z.png', + url=host, thumbnail=get_thumb('alphabet', auto=True), fanart='https://s17.postimg.org/fwi1y99en/a-z.png', extra='letras' )) @@ -57,8 +56,7 @@ def mainlist(item): itemlist.append(Item(channel=item.channel, title="Ultimas Agregadas", action="ultimas", - url=host, - thumbnail='https://s22.postimg.org/cb7nmhwv5/ultimas.png', + url=host, thumbnail=get_thumb('last', auto=True), fanart='https://s22.postimg.org/cb7nmhwv5/ultimas.png' )) @@ -66,7 +64,7 @@ def mainlist(item): title="Mas Vistas", action="todas", url=host + 'pelicula/peliculas-mas-vistas', - thumbnail='https://s9.postimg.org/wmhzu9d7z/vistas.png', + thumbnail=get_thumb('more watched', auto=True), fanart='https://s9.postimg.org/wmhzu9d7z/vistas.png' )) @@ -74,7 +72,7 @@ def mainlist(item): title="Mas Votadas", action="todas", url=host + 'pelicula/peliculas-mas-votadas', - thumbnail='https://s7.postimg.org/9kg1nthzf/votadas.png', + thumbnail=get_thumb('more voted', auto=True), fanart='https://s7.postimg.org/9kg1nthzf/votadas.png' )) @@ -82,7 +80,7 @@ def mainlist(item): title="Estrenos DVD", action="todas", url=host + 'pelicula/ultimas-peliculas/estrenos-dvd', - thumbnail='https://s1.postimg.org/m89hus1tb/dvd.png', + thumbnail=get_thumb('premieres', auto=True), fanart='https://s1.postimg.org/m89hus1tb/dvd.png' )) @@ -90,7 +88,7 @@ def mainlist(item): title="Actualizadas", action="todas", url=host + 'pelicula/ultimas-peliculas/ultimas/actualizadas', - thumbnail='https://s16.postimg.org/57evw0wo5/actualizadas.png', + thumbnail=get_thumb('updated', auto=True), fanart='https://s16.postimg.org/57evw0wo5/actualizadas.png' )) @@ -98,7 +96,7 @@ def mainlist(item): title="Buscar", action="search", url=host + '/buscar/?q=', - thumbnail='https://s30.postimg.org/pei7txpa9/buscar.png', + thumbnail=get_thumb('search', auto=True), fanart='https://s30.postimg.org/pei7txpa9/buscar.png' )) @@ -357,6 +355,7 @@ def findvideos(item): videoitem.extra = item.thumbnail videoitem.fulltitle = item.title videoitem.quality = 'default' + videoitem.infoLabels = item.infoLabels # Requerido para FilterTools diff --git a/plugin.video.alfa/channels/miltorrents.py b/plugin.video.alfa/channels/miltorrents.py index f2944430..68a2d154 100755 --- a/plugin.video.alfa/channels/miltorrents.py +++ b/plugin.video.alfa/channels/miltorrents.py @@ -12,6 +12,7 @@ from core import tmdb from core.item import Item from core.scrapertools import decodeHtmlentities as dhe from platformcode import config, logger +from channelselector import get_thumb def mainlist(item): @@ -23,20 +24,20 @@ def mainlist(item): itemlist = [] itemlist.append(Item(channel=item.channel, title="[COLOR yellow][B]Películas[/B][/COLOR]", action="peliculas", - url="http://www.miltorrents.com", thumbnail="http://imgur.com/46ZzwrZ.png", + url="http://www.miltorrents.com", thumbnail=get_thumb('movies', auto=True), fanart="http://imgur.com/y4nJyZh.jpg")) title = "[COLOR firebrick][B]Buscar[/B][/COLOR]" + " " + "[COLOR yellow][B]Peliculas[/B][/COLOR]" itemlist.append(Item(channel=item.channel, title=" " + title, action="search", url="", - thumbnail="http://imgur.com/JdSnBeH.png", fanart="http://imgur.com/gwjawWV.jpg", + thumbnail=get_thumb('search', auto=True), fanart="http://imgur.com/gwjawWV.jpg", extra="peliculas" + "|" + check_bg)) itemlist.append(Item(channel=item.channel, title="[COLOR slategray][B]Series[/B][/COLOR]", action="peliculas", - url="http://www.miltorrents.com/series", thumbnail="http://imgur.com/sYpu1KF.png", + url="http://www.miltorrents.com/series", thumbnail=get_thumb('tvshows', auto=True), fanart="http://imgur.com/LwS32zX.jpg")) title = "[COLOR firebrick][B]Buscar[/B][/COLOR]" + " " + "[COLOR slategray][B]Series[/B][/COLOR]" itemlist.append(Item(channel=item.channel, title=" " + title, action="search", url="", - thumbnail="http://imgur.com/brMIPlT.png", fanart="http://imgur.com/ecPmzDj.jpg", + thumbnail=get_thumb('search', auto=True), fanart="http://imgur.com/ecPmzDj.jpg", extra="series" + "|" + check_bg)) return itemlist diff --git a/plugin.video.alfa/channels/miradetodo.py b/plugin.video.alfa/channels/miradetodo.py index 78243829..2591b454 100755 --- a/plugin.video.alfa/channels/miradetodo.py +++ b/plugin.video.alfa/channels/miradetodo.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 tgenero = {"Comedia": "https://s7.postimg.org/ne9g9zgwb/comedia.png", "Suspense": "https://s13.postimg.org/wmw6vl1cn/suspenso.png", @@ -50,18 +51,18 @@ def mainlist(item): itemlist.append(item.clone(title="Peliculas", action="menu_peliculas", - 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.clone(title="Series", action="menu_series", - thumbnail='https://s27.postimg.org/iahczwgrn/series.png', + thumbnail=get_thumb('tvshows', auto=True), fanart='https://s27.postimg.org/iahczwgrn/series.png', )) itemlist.append(item.clone(title="Buscar", action="search", - thumbnail='https://s30.postimg.org/pei7txpa9/buscar.png', + thumbnail=get_thumb('search', auto=True), fanart='https://s30.postimg.org/pei7txpa9/buscar.png', url=host + '?s=' )) @@ -76,7 +77,7 @@ def menu_peliculas(item): 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 + 'page/1/?s' )) @@ -84,7 +85,7 @@ def menu_peliculas(item): itemlist.append(item.clone(title="Generos", action="seccion", url=host + 'page/1/?s', - thumbnail='https://s3.postimg.org/5s9jg2wtf/generos.png', + thumbnail=get_thumb('genres', auto=True), fanart='https://s3.postimg.org/5s9jg2wtf/generos.png', seccion='generos-pelicula' )) @@ -92,7 +93,7 @@ def menu_peliculas(item): itemlist.append(item.clone(title="Por Año", action="seccion", url=host + 'page/1/?s', - thumbnail='https://s8.postimg.org/7eoedwfg5/pora_o.png', + thumbnail=get_thumb('year', auto=True), fanart='https://s8.postimg.org/7eoedwfg5/pora_o.png', seccion='fecha-estreno' )) @@ -100,7 +101,7 @@ def menu_peliculas(item): itemlist.append(item.clone(title="Calidad", action="seccion", url=host + 'page/1/?s', - thumbnail='https://s13.postimg.org/6nzv8nlkn/calidad.png', + thumbnail=get_thumb('quality', auto=True), fanart='https://s13.postimg.org/6nzv8nlkn/calidad.png', seccion='calidad' )) @@ -114,8 +115,7 @@ def menu_series(item): itemlist = [] itemlist.append(item.clone(title="Todas", - action="lista", - thumbnail='https://s18.postimg.org/fwvaeo6qh/todas.png', + action="lista", thumbnail=get_thumb('all', auto=True), fanart='https://s18.postimg.org/fwvaeo6qh/todas.png', url=host + 'series/page/1/', )) @@ -123,7 +123,7 @@ def menu_series(item): itemlist.append(item.clone(title="Generos", action="seccion", url=host + 'series/page/1/', - thumbnail='https://s3.postimg.org/5s9jg2wtf/generos.png', + thumbnail=get_thumb('genres', auto=True), fanart='https://s3.postimg.org/5s9jg2wtf/generos.png', seccion='generos-serie' )) @@ -131,7 +131,7 @@ def menu_series(item): itemlist.append(item.clone(title="Por Año", action="seccion", url=host + 'series/page/1/', - thumbnail='https://s8.postimg.org/7eoedwfg5/pora_o.png', + thumbnail=get_thumb('year', auto=True), fanart='https://s8.postimg.org/7eoedwfg5/pora_o.png', seccion='series-lanzamiento' )) diff --git a/plugin.video.alfa/channels/divxatope.json b/plugin.video.alfa/channels/mispelisyseries.json similarity index 69% rename from plugin.video.alfa/channels/divxatope.json rename to plugin.video.alfa/channels/mispelisyseries.json index 8f70eb4a..9d5ae057 100755 --- a/plugin.video.alfa/channels/divxatope.json +++ b/plugin.video.alfa/channels/mispelisyseries.json @@ -1,11 +1,11 @@ { - "id": "divxatope", - "name": "Divxatope", + "id": "mispelisyseries", + "name": "Mispelisyseries", "active": true, "adult": false, "language": ["cast", "lat"], - "thumbnail": "divxatope.png", - "banner": "divxatope.png", + "thumbnail": "http://mispelisyseries.com/mps/library/content/template_mps/images/logomps.png", + "banner": "", "categories": [ "torrent", "movie", @@ -43,6 +43,14 @@ "default": true, "enabled": true, "visible": true + }, + { + "id": "include_in_newest_4k", + "type": "bool", + "label": "Incluir en Novedades - 4K", + "default": true, + "enabled": true, + "visible": true } ] } \ No newline at end of file diff --git a/plugin.video.alfa/channels/divxatope.py b/plugin.video.alfa/channels/mispelisyseries.py similarity index 74% rename from plugin.video.alfa/channels/divxatope.py rename to plugin.video.alfa/channels/mispelisyseries.py index d1aae940..ba65968e 100644 --- a/plugin.video.alfa/channels/divxatope.py +++ b/plugin.video.alfa/channels/mispelisyseries.py @@ -9,18 +9,20 @@ from core import scrapertools from core import servertools from core.item import Item from platformcode import logger +from channelselector import get_thumb - +host = 'http://mispelisyseries.com/' def mainlist(item): logger.info() itemlist = [] - itemlist.append(Item(channel=item.channel, action="menu", title="Películas", url="http://www.divxatope1.com/", - extra="Peliculas", folder=True)) + itemlist.append(Item(channel=item.channel, action="menu", title="Películas", url=host, + extra="Peliculas", folder=True, thumbnail=get_thumb('movies', auto=True))) itemlist.append( - Item(channel=item.channel, action="menu", title="Series", url="http://www.divxatope1.com", extra="Series", - folder=True)) - itemlist.append(Item(channel=item.channel, action="search", title="Buscar...")) + Item(channel=item.channel, action="menu", title="Series", url=host, extra="Series", + folder=True, thumbnail=get_thumb('tvshows', auto=True))) + itemlist.append(Item(channel=item.channel, action="search", title="Buscar", url=host + 'buscar', + thumbnail=get_thumb('search', auto=True))) return itemlist @@ -44,61 +46,64 @@ def menu(item): plot = "" itemlist.append(Item(channel=item.channel, action="lista", title=title, url=url, thumbnail=thumbnail, plot=plot, folder=True)) + + if title != "Todas las Peliculas": itemlist.append( Item(channel=item.channel, action="alfabetico", title=title + " [A-Z]", url=url, thumbnail=thumbnail, plot=plot, folder=True)) - if item.extra == "Peliculas": - title = "4k UltraHD" - url = "http://divxatope1.com/peliculas-hd/4kultrahd/" - thumbnail = "" - plot = "" - itemlist.append(Item(channel=item.channel, action="lista", title=title, url=url, thumbnail=thumbnail, plot=plot, - folder=True)) + itemlist.append( Item(channel=item.channel, action="alfabetico", title=title + " [A-Z]", url=url, thumbnail=thumbnail, plot=plot, folder=True)) + if 'películas' in item.title.lower(): + new_item = item.clone(title='Peliculas 4K', url=host+'buscar', post='q=4k', action='listado2', + pattern='buscar-list') + itemlist.append(new_item) + return itemlist def search(item, texto): - logger.info() - texto = texto.replace(" ", "+") - item.url = "http://www.divxatope1.com/buscar/descargas" - item.extra = urllib.urlencode({'q': texto}) + logger.info("search:" + texto) + # texto = texto.replace(" ", "+") - try: - itemlist = lista(item) + #try: + item.post = "q=%s" % texto + item.pattern = "buscar-list" + itemlist = listado2(item) - # Esta pagina coloca a veces contenido duplicado, intentamos descartarlo - dict_aux = {} - for i in itemlist: - if not i.url in dict_aux: - dict_aux[i.url] = i - else: - itemlist.remove(i) - - 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 [] + 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): itemlist = [] item = Item() try: if categoria in ['peliculas', 'torrent']: - item.url = "http://www.divxatope1.com/peliculas" + item.url = host+"peliculas" elif categoria == 'series': - item.url = "http://www.divxatope1.com/series" + item.url = host+"series" + + if categoria == '4k': + + item.url = Host + '/buscar' + + item.post = 'q=4k' + + item.pattern = 'buscar-list' + + action = listado2(item) else: return [] @@ -180,7 +185,7 @@ def lista(item): matches = re.compile(patron, re.DOTALL).findall(calidad + '
    ') idioma = '' - if "divxatope1.com/serie" in url: + if host+"/serie" in url: contentTitle = re.sub('\s+-|\.{3}$', '', contentTitle) capitulo = '' temporada = 0 @@ -220,6 +225,62 @@ def lista(item): 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, '