Manual para creación de canales

En el equipo Alfa hemos decidido inculcar un poco de cultura a los usuarios y porque no, también a desarrolladores para que puedan aprender a programar o mejorar sus conocimientos, Alfa como siempre lo dijimos no solo pretende entretener, también pretende que los usuarios obtengan cierta independencia y conocimiento suficiente el cual les permita poder crear o reparar sus propios canales, addons y no depender de que alguien haga el trabajo por ellos, esperamos sea de utilidad para muchos!

Como somos un addon que publica su codigo en github y nos gustaria ver nuevos desarrolladores, vamos a aportar nuestro granito de arena.

Las preguntas se hacen en público para que otros puedan aprender.

Equipo Alfa
 

Adjuntos

El patrón ya es correcto como esta.
En primer lugar decirte q aunque vayamos a utilizar la misma función para películas novedades y para búsqueda (serie y películas) sigo pensando q en Novedades hay q descartar las series (tal y como está ahora). Para mi las novedades en series son los nuevos episodios.

Con esta premisa has de buscar la manera de saber, cuándo entras en la función, de donde vienes (mira el item q te llega). Una vez sepas si venimos del mainlist o de search y nos encontremos con una serie la ignoraremos (cómo ahora) o la añadiremos (con los atributos q necesitemos)
 
El patrón ya es correcto como esta.
En primer lugar decirte q aunque vayamos a utilizar la misma función para películas novedades y para búsqueda (serie y películas) sigo pensando q en Novedades hay q descartar las series (tal y como está ahora). Para mi las novedades en series son los nuevos episodios.

Con esta premisa has de buscar la manera de saber, cuándo entras en la función, de donde vienes (mira el item q te llega). Una vez sepas si venimos del mainlist o de search y nos encontremos con una serie la ignoraremos (cómo ahora) o la añadiremos (con los atributos q necesitemos)

Hola @caperucitaferoz, gracias por tus consejos. Estoy con ello.
 
Última edición:
Actualización lista:

ToDo:
  1. Utilizar scrapertools.get_season_and_episode para ver si así se solucionan los problemas detectados con varias series.
  2. Mostrar las temporadas de cada serie y sus episodios y no todos los episodios como se muestra actualmente.
  3. Añadir nueva sección en mainlist para "Nuevos episodios".
  4. Arreglar el buscador.
  5. Añadir el canal al buscador global.
  6. Añadir el canal a la sección "Novedades" de Alfa.
Por fin acabamos con la lista de tareas pendientes.

¿Se os ocurre algo más para añadir?

Saludos.
 

Adjuntos

Última edición:
¿Se os ocurre algo más para añadir?
Jejeje te va la marcha!!!

Veamos:
  1. Se te ha pasado un comentario q hice ayer sobre item.contentSeason. :(
  2. La resolucion del buscador es correcta...pero ¿seguro q no habia ningun atributo de item q te indicara si venias de search? La utilizacion de item.extra es correcta, pero redundante. Cuanto mas simple y legible sea el codigo mejor para mantenerlo, y por cierto seguro q si lo piensas veras otra forma de encadenar los condicionales (lineas 45-53) mas simple. Aunq ya te digo q la solucion es correcta. :)
  3. Creo q has tachado muy pronto el punto 6 de tu lista. Puedes probarlo desactivando el resto de canales y dejando solo el tuyo en los canales incluidos en Novedades. :D
  4. En pelisultra.json, dentro de settings el primer control ('modo_grafico') no sirve de nada ya q no consultas esa opcion en ninguna parte del codigo. ¿copy/paste? :p
Si aun quieres mas marcha:
  • Podrias añadir mas colores en otras partes del canal (los items de peliculas/series diferentes de los de pagina siguiente por ejemplo). Incluso q el ususario los elija entre varias opciones (perfiles)
  • El numero de episodios_por_pagina podria ser variable y seleccionable por el usuario.
  • Se podria dar la opcion al usuario de decidir si quiere ver las series por temporadas o listar todos los episodios juntos.
  • ....
 
Hola amigo paquito el buscador veo que lo has tachado de la lista de tareas pendientes pero sigue sin funcionar,esta vez creo que no busca nada de nada,no encuentra las peliculas,puedes probarlo con cualquiera de las pelis de las secciones Estrenos o Novedades del propio canal,tampoco busca creo que ninguna de las series,en esta ocasion yo en concreto lo he probado con las series The walking dead,Dexter y Club de cuervos

Si no lo corriges seguira fallando en el canal pero ademas no te servira de nada el trabajo que haces de imcluirlo en la busqueda global donde en estas condiciones actuales tambien seguiria fallando y sin encontrar nada en las busquedas globales


Espero que consigas arreglarlo cuando tengas tiempo.quizas lo haces muy deprisa


Saludos:)
 
Última edición:
Pues a mi me funciona correctamente. ¿q tal un log?

Esta bien Caperucitaferoz te dejo mi log detallado,probado con las series The walking dead,Dexter y Club de cuervos y con las peliculas de la seccion novedades Sky bound,Operacion casino y el cazador de sueños,en todos los casos no me devuelven resultados las busquedas y siempre me da el mensaje no hay elementos que mostrar


Uso kodi 17.6 en windows 10 con la version de Alfa 2.4.17


Saludos y muchas gracias por interesarte:)

P.D

¿ Por cierto eres hombre o mujer ? Es algo que carece de importancia y ya se que no viene a cuento preguntar eso pero como en tu perfil pone usuario y que eres hombre y en un mensaje pusiste No me llameis profesor llamadme solamentente gran maestra jedi
 

Adjuntos

Última edición:
Jajajaja, ayer parece que tenía prisa por ver el partido y me vine arriba :)
Se te ha pasado un comentario q hice ayer sobre item.contentSeason. :(
Pues la verdad es que se me pasó completamente. Lo modifico.
La resolucion del buscador es correcta...pero ¿seguro q no habia ningun atributo de item q te indicara si venias de search? La utilizacion de item.extra es correcta, pero redundante.
Supongo que te refieres a que en item.url venga la cadena de búsqueda "/?s=".
Cuanto mas simple y legible sea el codigo mejor para mantenerlo, y por cierto seguro q si lo piensas veras otra forma de encadenar los condicionales (lineas 45-53) mas simple. Aunq ya te digo q la solucion es correcta. :)
¿Qué tal esto? No lo puedo probar porque no estoy en casa, así que no sé si funcionará como espero:
Python:
        if not "/series/" in scrapedurl:
            scrapedquality = scrapertools.find_single_match(scrapedquality, '<span class="calidad2">(.*?)</span>')
            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 "/?s=" in item.url:
                itemlist.append(Item(action = "temporadas", channel = item.channel, title = scrapedtitle + " (" + scrapedyear + ")", contentSerieName=scrapedtitle, contentType="tvshow", thumbnail = scrapedthumbnail, url = scrapedurl, infoLabels={'year':scrapedyear}))
Creo q has tachado muy pronto el punto 6 de tu lista. Puedes probarlo desactivando el resto de canales y dejando solo el tuyo en los canales incluidos en Novedades. :D
Miré que salía en la configuración de Novedades, no pensé que hubiera que hacer nada más. ¿Alguna pista de como hacer que funcione correctamente?
En pelisultra.json, dentro de settings el primer control ('modo_grafico') no sirve de nada ya q no consultas esa opcion en ninguna parte del codigo. ¿copy/paste? :p
¿Acaso dudabas que no hubiera sido copy/paste???? :p Lo quito del .json.
Si aun quieres mas marcha:
  • Podrias añadir mas colores en otras partes del canal (los items de peliculas/series diferentes de los de pagina siguiente por ejemplo). Incluso q el ususario los elija entre varias opciones (perfiles)
  • El numero de episodios_por_pagina podria ser variable y seleccionable por el usuario.
  • Se podria dar la opcion al usuario de decidir si quiere ver las series por temporadas o listar todos los episodios juntos.
  • ....
Bueno, me refiería a funcionalidades necesarias más que a mejoras más superfluas. Aunque el tema de los perfiles y los menús contextuales me llaman la atención, pero tendrías que echarme una mano o indicarme donde hay documentación al respecto.

Gracias por toda tu ayuda desinteresada @caperucitaferoz.

En cuanto pruebe en casa las modificaciones indicadas en este post, subo nueva versión... ¿quizás la última????? :eek:
 
te dejo mi log detallado
Ahora si @bic ya he podido ver el fallo.
El error se produce cuando solo hay una pagina de resultados debido al patron de la linea 30. hay q cambiarlo por:
Python:
data2 = scrapertools.find_single_match(data,'(?s)<div class="item_1.*?>(.*?)<div id="paginador">')

@Paquito Porras tenlo en cuenta para la proxima version (la ultima o la q sea tu elijes ;))

Supongo que te refieres a que en item.url venga la cadena de búsqueda "/?s=".
Esa es una de las opciones posibles. Si pones un logger.info(item) en la primera linea de la funcion peliculas (Offtopic: ahora q sirve tb para las busquedas tal vez quieras renombrarla) y entras desde el mainmenu y despues haciendo una busqueda podras comparar los items q te llegan en cada caso. Entre los atributos q cambian la url como dices seria uno, otro el title y para mi el mas evidente item.action.

¿Qué tal esto? No lo puedo probar porque no estoy en casa, así que no sé si funcionará como espero:
Perfecto ¿mucho mas claro verdad?

Miré que salía en la configuración de Novedades, no pensé que hubiera que hacer nada más. ¿Alguna pista de como hacer que funcione correctamente?
Bueno, me refiería a funcionalidades necesarias más que a mejoras más superfluas. Aunque el tema de los perfiles y los menús contextuales me llaman la atención, pero tendrías que echarme una mano o indicarme donde hay documentación al respecto.
superfluas??? :(:(:(
Recuerdo q en mediacenter habia algun tutorial q hablaba de estos temas, aunq eran para pelisalacarta supongo q entre eso y mirando algun canal q ya lo tenga implementado en Alfa podrias hacerlo, y si no ya sabes donde estoy.
 
Ahora si @bic ya he podido ver el fallo.
El error se produce cuando solo hay una pagina de resultados debido al patron de la linea 30. hay q cambiarlo por:
Python:
data2 = scrapertools.find_single_match(data,'(?s)<div class="item_1.*?>(.*?)<div id="paginador">')
@Paquito Porras tenlo en cuenta para la proxima version (la ultima o la q sea tu elijes ;))
Ya veo cual es el problema. Cuando el resultado de la búsqueda se muestra en varias páginas, nuestro querido admin de PelisUltra mete "<div class='paginado'>", que es lo que buscaba el filtro. Pero cuando devuelve sólo una página de resultados, no existe "<div class='paginado'>" y por eso fallaba.
Gracias @bic por avisar del fallo y gracias @caperucitaferoz por la solución a dicho fallo.

Esa es una de las opciones posibles. Si pones un logger.info(item) en la primera linea de la funcion peliculas (Offtopic: ahora q sirve tb para las busquedas tal vez quieras renombrarla) y entras desde el mainmenu y despues haciendo una busqueda podras comparar los items q te llegan en cada caso. Entre los atributos q cambian la url como dices seria uno, otro el title y para mi el mas evidente item.action.
Visto también. Cuando se llama desde "Buscar" el "action" es "search" mientras que cuando se llama desde cualquier otro sitio el "action" es "peliculas". Cambio el "if" para que quede más claro:

Python:
if item.action == "search":

Perfecto ¿mucho mas claro verdad?
Por supuesto que sí, las prisas son malas compañeras ;) Se me echaba la hora del partido encima... jejeje.

Perdona, igual no me expresé bien. Me refería a funcionalidades no básicas para el correcto funcionamiento del addon.

Recuerdo q en mediacenter habia algun tutorial q hablaba de estos temas, aunq eran para pelisalacarta supongo q entre eso y mirando algun canal q ya lo tenga implementado en Alfa podrias hacerlo, y si no ya sabes donde estoy.
Prometo echar un vistazo.

Gracias de nuevo.
 
Gracias @caperucitaferoz ahora ya funciona mucho mejor el buscador con las series y peliculas:)

Aunque curiosamente hay todavia alguna pelicula de la seccion Novedades como por ejemplo El secreto de la aldea ( Poklosie ) que no la encuentra y tambien de las series tampoco encuentra Falling skies o la serie Penny dreadful no he buscado mucho mas pero las demas series y peliculas parece encontrarlas perfectamente junto con algunos resultados mas por busqueda,no se si habra mas series o peliculas que todavia no encuentre


Por cierto la linea que he sustituido era la linea 31 y no la 30 por que esa linea no existe o esta en blanco


Dejo otro log detallado por si acaso hubiera una solucion o mejora paras las poquitas busquedas que no encuentra todavia



Kodi 17.6 en windows 10 con la version de Alfa 2.4.17



Gracias por el arreglo y por mirarlo saludos:)
 

Adjuntos

Aunque curiosamente hay todavia alguna pelicula de la seccion Novedades como por ejemplo El secreto de la aldea ( Poklosie ) que no la encuentra y tambien de las series tampoco encuentra Falling skies o la serie Penny dreadful no he buscado mucho mas pero las demas series y peliculas parece encontrarlas perfectamente junto con algunos resultados mas por busqueda,no se si habra mas series o peliculas que todavia no encuentre

Cierto ahora el problema es cuando solo hay un resultado en la busqueda. Nuevamente la solucion esta en el patron de la linea 31:
Python:
data2 = scrapertools.find_single_match(data,'(?s)<div class="item_1.*?>(.*?)id="paginador">')

Toma nota @Paquito Porras para solucionarlo.

Offtopic:
¿ Por cierto eres hombre o mujer ?
Victor... ¿estas intentando ligar conmigo? :p:p:p
 
  • Me gusta
Reacciones: bic
Cierto ahora el problema es cuando solo hay un resultado en la busqueda. Nuevamente la solucion esta en el patron de la linea 31:

Perfecto caperucitaferoz ahora si que busca correctamente eres una maquina del python de los comandos y expresiones regulares

Victor... ¿estas intentando ligar conmigo? :p:p:p


Que pregunta mas dificil caperucitaferoz,pero si yo no se ligar creo que se me a olvidado hasta como se hace del tiempo que hace que no practico


¿ Ya has encontrado hasta mi nombre en el log detallado ?:cool:


Bueno tienes buenas cualidades atrayentes como un equilibrado sentido del humor, inteligencia y imcluso pareces buena persona cosas imprescindibles para que alguien me atraiga,aunque solo preguntaba por que como en tu perfil pone hombre eso pensaba que eras desde el principio y desde hace un poco mas adelante habia cosas que parecian indicar que eres mujer y yo estaba ya confuso:rolleyes:


Al menos ya parece que tratamos con una mujer pero para eso de ligar tendrias que hacer y enseñar un buen tutorial muy completo con los requisitos necesarios:p:)
 
Última edición:
Cierto ahora el problema es cuando solo hay un resultado en la busqueda. Nuevamente la solucion esta en el patron de la linea 31:
Python:
data2 = scrapertools.find_single_match(data,'(?s)<div class="item_1.*?>(.*?)id="paginador">')

Toma nota @Paquito Porras para solucionarlo.
Hola @caperucitaferoz, me ha costado un poco pero finalmente he visto cual era el problema cuando la búsqueda sólo devolvía un resultado y cómo lo solventas con el cambio de patrón. Desde luego, eres bueno con los regex :cool:
Seguramente esta noche suba los cambios después de probarlo tranquilamente en casa y tengo pendiente revisar lo del buscador global y lo de Novedades Alfa, a ver por qué no funciona.
Esta está siendo una semana complicada y no estoy pudiendo dedicarle el tiempo que se merece al canal, pero no desisto ;)
 
Actualización lista:

ToDo:
  1. Utilizar scrapertools.get_season_and_episode para ver si así se solucionan los problemas detectados con varias series.
  2. Mostrar las temporadas de cada serie y sus episodios y no todos los episodios como se muestra actualmente.
  3. Añadir nueva sección en mainlist para "Nuevos episodios".
  4. Arreglar el buscador.
  5. Añadir el canal al buscador global.
  6. Añadir el canal a la sección "Novedades" de Alfa.
El punto 5 y 6 falta. Están añadidos pero parece que no funcionan correctamente. Pendiente de revisarlos.

Saludos.
 

Adjuntos

El punto 5 y 6 falta.
El buscador global no funciona? Q le pasa?

Desde luego, eres bueno con los regex :cool:
2293804


Algun 'Me gusta' de vez en cuando no estaria mal ¿no?
 
Última edición:
El buscador global no funciona? Q le pasa?


2293804


Algun 'Me gusta' de vez en cuando no estaria mal ¿no?


Yo te regalo un me gusta caperucitaferoz ya otro dia te regalare otro,yo aunque he tenido una racha ultimamente de ir consiguiendolos la verdad es que en este ultimo mes o ultimos dias tambien me cuesta conseguir alguno para pasar de los 33 que tengo deben estar pasando ya mis tiempos de gustar:p
 
Última edición:
Última edición:
Creo recordar que me dijiste que no funcionaba para PelisUltra, no? No he podido probarlo aún.

Qué me vas a contar a mí que con el curro que me estoy pegando no me ha dado nadie ni uno :(


Son cosas que pasan hay gente que da los me gusta por nada y a otros les ayudas y resuelves problemas y como mucho te dan las gracias,pero toma paquito otro me gusta para ti,pa que no se diga:D
 
Última edición:
Hola amigo paquito en el ultimo archivo que has subido veo que en las actuales lineas 32 y 33 que nos indico nuestra amiga @caperucitaferoz bueno ella al final dijo linea 31 que habia que sustituir y tu tienes 2 lineas casi iguales como esta con el mismo patron y todo


data2 = scrapertools.find_single_match(data,'(?s)<div class="item_1.*?>(.*?)id="paginador">')


¿ Al sustituir la linea no te habras equivocado y simplemente habras añadido una linea mas olvidandote de borrar la anterior y duplicandolo ? Me da a mi que si que algo mal hay aqui:rolleyes:

upload_2018-2-17_1-29-1.jpeg


Sera mejor que este punto lo revise la gran maestra jedi @caperucitaferoz


Saludos:)
 
Última edición:
Atrás
Arriba