Página 3 de 6
Re: Cambio de xml a json
Publicado: 19 Nov 2015, 23:58
por robalo
Gracias divadr, entiendo los motivos por querer cambiar, no es lo mismo estar scrapeando que cargar y comparar. Pero lo del tercer archivo no logro enterder de que va. Entiendo lo que me explicó @SeiTaN80 en el github, pero son cosas bastante personales y no veo como encajar un tercer archivo con una estructura común. Igual es cosa de leeros más y mejor, bueno más no por que lo leo todo
No tenía intención de "intervenir" pero para retomar el tema y ver más alternativas posibles os pongo mi visión particular del tema.
Particularmente me gusta más escribir canal.version que canal['version'] y la creación o edición del fichero de configuración también me gusta más version = x.
Un ejemplo de un .py como archivo de configuración podría ser
Código: Seleccionar todo
# -*- coding: utf-8 -*-
id = "animeflv"
name = "AnimeFLV"
language = "es"
update_url = ""
active = True
include_in_global_search = True
version = 3
adult= False
date = "24/10/2015"
changes = "resueltos problemas utf, libreria requests, pep8 conventions, etc"
fanart = ""
thumbnail = ""
class category(object):
adult = False
all = False
anime = True
documentary = False
latino = False
movie = False
music = False
serie = False
torrent = False
vos = False
Para la carga y de los valores remoto y local
Código: Seleccionar todo
r = urllib.URLopener()
r.retrieve( "http://robalo.esy.es/test/animeflvcfg.py", os.path.join(config.get_runtime_path(), "channels", "__tempcfg__.py") )
ch_r = __import__("channels.__tempcfg__", globals(), locals(), ["*"], -1)
ch_l = __import__("channels." + channel_name, globals(), locals(), ["*"], -1)
Y el uso pues ya sabemos como
if ch_l.version < ch_r.version:
if ch_l.category.adult:
etc...
Re: Cambio de xml a json
Publicado: 20 Nov 2015, 00:05
por divadr
Es por un tema de rendimiento... para crear la lista de canales si tenemos que importar todos los canales es mas lento que leer el JSON... yo con el blusens probe las dos opciones y cambia bastante el tiempo de carga... nada mas que eso
Yo tambien probe de incluir los datos dentro del mismo .py pero era mas lento
Re: Cambio de xml a json
Publicado: 20 Nov 2015, 00:15
por super_berny
robalo escribió:Pero lo del tercer archivo no logro enterder de que va.
Lo del tercer archivo es una tema a desarrollar en el futuro. Jesus me comento q en plex el sistema de setting se estaba quedando justo, no tengo ni idea pero parece ser q hay un numero limitado de 'variables' q se pueden utilizar (o eso entendi yo).
¿No seria mas logico poner cada cosa en su sitio? Dejar el setting actual para las cosas comunes y q cada canal tubiese sus propios parametros configurables. De ahi salio el tema del tercer archivo. Se debatia si incluir las configuraciones en el archivo de parametros (lo q hasta ahora era el xml) o en un tercer archivo dentro de la carpeta de datos del usuario 'userdata\addon_data\plugin.video.pelisalacarta' para q al actualizar no lo machaque.
Pero como digo son conjeturas de cara a implementarlo en proximas version.
Re: Cambio de xml a json
Publicado: 20 Nov 2015, 00:18
por robalo
no se divadr, aún no he probado el nuevo channelselector con ningún tipo de archivos pero me da que es lo mismo, al final todo son direcciones de memoria pero aún así lo probaré.
Re: Cambio de xml a json
Publicado: 20 Nov 2015, 00:37
por robalo
super_berny la verdad es que me has aclarado poco, estoy en el mismo punto Qué tenie que ver el settings con el tercer archivo? Si el que haga o edite el canal piensa que es necesario crear uno o varios archivos extras en userdata, pues que prepare el canal para tal fin, no creo que tenga que decirle nada a nadie de como almacenar los datos que se usarán en el canal, al que no le guste que se lo haga el.
Plex no se si tiene capao el número de entradas en la configuración, desconozco los problemas que han podido tener. De momento ahí estamos con los canales que tenemos. Yo le tengo puesto algunos más y de momento no se me queja

Re: Cambio de xml a json
Publicado: 20 Nov 2015, 17:36
por SeiTaN
Pues sigiendo el razonamiento que habeis dado, he cambiado la ruta del fichero de datos para mis canales.
[KODI Windows]
C:\Users\NOMBRE_USUARIO\AppData\Roaming\Kodi\userdata\addon_data\plugin.video.pelisalacarta\channels
La ruta la coge por la función
config.get_data_path()
Lo que he hecho es crear una carpeta "channels" para que esté todo más a mano, ya que tengo varios ficheros de configuración.
Saludos
Re: Cambio de xml a json
Publicado: 20 Nov 2015, 19:44
por robalo
Bueno, he probado, por tema de rendimiento, la combinación:
channelselector+core.channeltools+xml sin filtros 117 archivos en 0.026 s
channelselector+py sin filtros 117 archivos en 0.036 s
Me falta JSON pero creo que andará más o menos en el mismo rango. Creo que no es para llevarse las manos a la cabeza.

Esta noche, si puedo, prepararé el script para pasar los xml a json y saldremos de dudas.
Re: Cambio de xml a json
Publicado: 20 Nov 2015, 23:02
por robalo
Probado json:
channelselector+json sin filtros 117 archivos en 0.040 s
El campeón es el xml

pero vamos los tiempos en ninguno de los casos es para echarse a llorar. Lo que si queda claro que por rendimiento no se puede excluir a ninguno
Re: Cambio de xml a json
Publicado: 25 Nov 2015, 23:30
por SeiTaN
jesus escribió:
Así no se chafará al actualizar el plugin, y diferentes perfiles dentro del mismo Kodi podrán tener configuraciones distintas.
¿Los perfiles como van en relación a los plugins?
He creado uno y tengo acceso a los plugins, sin haberlos instalado en ese perfil
Aparte que veo que la carpeta de "profiles" se crea fuera en
C:\Users\USUARIO\AppData\Roaming\Kodi\userdata\profiles\prueba\
mientras que los datos del plugin (creados como master) están en
C:\Users\USUARIO\AppData\Roaming\Kodi\userdata\addon_data\plugin.video.pelisalacarta\
¿Cómo se puede saber que perfil está activo?
Lo digo para que si creo el fichero canal.data.json, tengamos dos diferentes en distintas rutas.
profile.canal.data.json [estructura]
profile --> nombre del perfil
canal -> nombre del canal
data -> valor para que saber que hay datos
json -> no hace falta explicarlo
Asi tendríamos paquito.seriesblanco.data.json
Paquito ve por ejemplo "True Detective" en español y tendría filtrado los enlaces asi.
y karen.seriesblanco.data.json
Karen tb ve "True Detective" pero como ella es poliglota y prefiere los enlaces en VO
Saludos
Re: Cambio de xml a json
Publicado: 25 Nov 2015, 23:48
por super_berny
SeiTan la verdad es q no tengo ni idea sobre los perfiles de Kodi, pero creo q Jesus se referia a diferentes usuarios de windows.
En tu caso si tanto Paquito como Karen utilizan el mismo usuario de windows, pero diferente perfil de Kodi (q ya seria raro, aunq posible), no se si podrias crear ambos filtros personalizados dentro de un unico archivo algo asi:
Código: Seleccionar todo
{'filtros':{'paquito':[{'serie1':...},{'serieN':...}],'karen':[{'serie1':...},{'serieN':...}]}}
Supongo q debe haber alguna manera de recuperar el nombre del perfil desde python, ¿no?
Lo de crear mas ficheros puede ser un poco de lio cuando necesitemos borrar un canal ¿no crees?