diff --git a/plugin.video.alfa/channels/playmax.py b/plugin.video.alfa/channels/playmax.py index 6b705e94..b1416ca8 100644 --- a/plugin.video.alfa/channels/playmax.py +++ b/plugin.video.alfa/channels/playmax.py @@ -4,7 +4,6 @@ import re from core import config from core import httptools -from core import jsontools as json from core import logger from core import scrapertools from core import tmdb @@ -124,6 +123,7 @@ def mainlist(item): def search(item, texto): logger.info() + texto = texto.replace(" ", "%20") item.url = "%s/buscar.php?apikey=%s&sid=%s&buscar=%s&modo=[fichas]&start=0" % (host, apikey, sid, texto) try: return busqueda(item) @@ -140,8 +140,12 @@ def busqueda(item): data = httptools.downloadpage(item.url).data data = xml2dict(data) + if type(data["Data"]["Fichas"]["Ficha"]) == dict: + searched_data = [data["Data"]["Fichas"]["Ficha"]] + else: + searched_data = data["Data"]["Fichas"]["Ficha"] - for f in data["Data"]["Fichas"]["Ficha"]: + for f in searched_data: f["Title"] = f["Title"].replace("", "") title = "%s (%s)" % (f["Title"], f["Year"]) infolab = {'year': f["Year"]} @@ -158,14 +162,13 @@ def busqueda(item): else: tipo = "movie" show = "" - itemlist.append(Item(channel=item.channel, action=action, title=title, url=url, text_color=color2, contentTitle=f["Title"], show=show, contentType=tipo, infoLabels=infolab, thumbnail=thumbnail)) if __modo_grafico__: tmdb.set_infoLabels_itemlist(itemlist, __modo_grafico__) - + # total = int(data.get("Data", {}).get("totalResultsFichas"), "0") total = int(data["Data"]["totalResultsFichas"]) actualpage = int(scrapertools.find_single_match(item.url, "start=(\d+)")) if actualpage + 20 < total: @@ -220,7 +223,7 @@ def newest(categoria): except: import sys for line in sys.exc_info(): - logger.error("{0}".format(line)) + logger.error("%s" %line) return [] return itemlist @@ -941,17 +944,9 @@ def xml2dict(xmldata): Un diccionario construido a partir de los campos del XML. """ - from core import filetools import sys parse = globals().get(sys._getframe().f_code.co_name) - # if xmldata is None and file is None: - # raise Exception("No hay nada que convertir!") - # elif xmldata is None: - # if not filetools.exists(file): - # raise Exception("El archivo no existe!") - # xmldata = open(file, "rb").read() - matches = re.compile("<(?P[^>]+)>[\n]*[\s]*[\t]*(?P.*?)[\n]*[\s]*[\t]*<\/(?P=tag)\s*>", re.DOTALL).findall(xmldata)