diff --git a/plugin.video.alfa/channels/bajui2.json b/plugin.video.alfa/channels/bajui2.json new file mode 100755 index 00000000..66c7b956 --- /dev/null +++ b/plugin.video.alfa/channels/bajui2.json @@ -0,0 +1,41 @@ +{ + "id": "bajui2", + "name": "Bajui2", + "active": true, + "adult": false, + "language": "es", + "thumbnail": "bajui.png", + "banner": "bajui.png", + "fanart": "bajui.png", + "version": 2, + "changes": [ + { + "date": "07/08/2017", + "description": "Fix URL HOST changed to Bajui2" + }, + { + "date": "15/03/2017", + "description": "limpieza código" + }, + { + "date": "01/07/2016", + "description": "Eliminado código innecesario." + } + ], + "categories": [ + "movie", + "tvshow", + "documentary", + "vos" + ], + "settings": [ + { + "id": "include_in_global_search", + "type": "bool", + "label": "Incluir en busqueda global", + "default": false, + "enabled": true, + "visible": true + } + ] +} diff --git a/plugin.video.alfa/channels/bajui2.py b/plugin.video.alfa/channels/bajui2.py new file mode 100755 index 00000000..b091797a --- /dev/null +++ b/plugin.video.alfa/channels/bajui2.py @@ -0,0 +1,270 @@ +# -*- coding: utf-8 -*- + +import re +import urlparse + +from core import logger +from core import scrapertools +from core import servertools +from core.item import Item + + +def mainlist(item): + logger.info() + itemlist = [] + itemlist.append(Item(channel=item.channel, title="Películas", action="menupeliculas", + url="http://www.bajui2.com/descargas/categoria/2/peliculas", + fanart=item.fanart)) + itemlist.append(Item(channel=item.channel, title="Series", action="menuseries", + fanart=item.fanart)) + itemlist.append(Item(channel=item.channel, title="Documentales", action="menudocumentales", + fanart=item.fanart)) + itemlist.append(Item(channel=item.channel, title="Buscar", action="search", + fanart=item.fanart)) + return itemlist + + +def menupeliculas(item): + logger.info() + itemlist = [] + itemlist.append(Item(channel=item.channel, title="Películas - Novedades", action="peliculas", url=item.url, + fanart=item.fanart, viewmode="movie_with_plot")) + itemlist.append( + Item(channel=item.channel, title="Películas - A-Z", action="peliculas", url=item.url + "/orden:nombre", + fanart=item.fanart, viewmode="movie_with_plot")) + + #
+ data = scrapertools.cache_page(item.url) + data = scrapertools.get_match(data, '') + patron = '([^<]+)' + matches = re.compile(patron, re.DOTALL).findall(data) + for url, title in matches: + scrapedurl = urlparse.urljoin(item.url, url) + itemlist.append(Item(channel=item.channel, title="Películas en " + title, action="peliculas", url=scrapedurl, + fanart=item.fanart, viewmode="movie_with_plot")) + + itemlist.append(Item(channel=item.channel, title="Buscar", action="search", url="", fanart=item.fanart)) + return itemlist + + +def menuseries(item): + logger.info() + itemlist = [] + itemlist.append(Item(channel=item.channel, title="Series - Novedades", action="peliculas", + url="http://www.bajui2.com/descargas/categoria/3/series", + fanart=item.fanart, viewmode="movie_with_plot")) + itemlist.append(Item(channel=item.channel, title="Series - A-Z", action="peliculas", + url="http://www.bajui2.com/descargas/categoria/3/series/orden:nombre", + fanart=item.fanart, viewmode="movie_with_plot")) + itemlist.append(Item(channel=item.channel, title="Series - HD", action="peliculas", + url="http://www.bajui2.com/descargas/subcategoria/11/hd/orden:nombre", + fanart=item.fanart, viewmode="movie_with_plot")) + itemlist.append(Item(channel=item.channel, title="Buscar", action="search", url="", + fanart=item.fanart)) + return itemlist + + +def menudocumentales(item): + logger.info() + itemlist = [] + itemlist.append(Item(channel=item.channel, title="Documentales - Novedades", action="peliculas", + url="http://www.bajui2.com/descargas/categoria/7/docus-y-tv", + fanart=item.fanart, viewmode="movie_with_plot")) + itemlist.append(Item(channel=item.channel, title="Documentales - A-Z", action="peliculas", + url="http://www.bajui2.com/descargas/categoria/7/docus-y-tv/orden:nombre", + fanart=item.fanart, viewmode="movie_with_plot")) + itemlist.append(Item(channel=item.channel, title="Buscar", action="search", url="", + fanart=item.fanart)) + return itemlist + + +# Al llamarse "search" la función, el launcher pide un texto a buscar y lo añade como parámetro +def search(item, texto, categoria=""): + logger.info(item.url + " search " + texto) + itemlist = [] + url = item.url + texto = texto.replace(" ", "+") + logger.info("categoria: " + categoria + " url: " + url) + try: + item.url = "http://www.bajui2.com/descargas/busqueda/%s" + item.url = item.url % texto + itemlist.extend(peliculas(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 peliculas(item, paginacion=True): + logger.info() + url = item.url + + # Descarga la página + data = scrapertools.cache_page(url) + patron = '






+ patronservidores = '