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

  • manual creacion de canales.pdf
    1 MB · Visitas: 1.991

bic

Usuario Activo
17 Oct 2017
732
147
43
Ya tengo identificados en el codigo fuente los patrones para la url y para la imagen pero tengo difucultades para encontrar en el codigo fuente el patron para el titulo de la pelicula

upload_2018-1-29_14-40-10.png

:rolleyes:
 

bic

Usuario Activo
17 Oct 2017
732
147
43

Al final he conseguido encontrarlo yo solo con ayuda del manual,lo que no estoy seguro del orden que debe ponerse en el py de momento me guiare por como lo indica el manual hasta que se me indique lo contrario o vea error en el log detallado despues de hacerlo

( 1 ) - url de la pelicula

( 2 ) - imagen de la pelicula

( 3 ) - título de la película
 

Intel1

Miembro del equipo
16 Oct 2017
344
176
43

Hola amigo.

Esa parte del patrón (Tercera linea de "patron") es para ubicar el título de la película, como se muetsra en la imagen:

Screenshot_20.jpg

Lo que tienes que hacer es seguir el orden en el codigo fuente de la pagina, que en este caso primero colocan: el link, luego la imagen de la pelicula y luego el titulo de la pelicula en alt="xxxxx"

Y ese orden (en el caso de pelisultra), tienes que hacerlo en tu patrón.

Ya como comentario aparte, una de las cosas que cambian (cuando Alfa dice: cambio de estructura xxxx), es por ejemplo el orden de los datos a extraer, que ahora es: url, imagen, titulo, cambian por ejemplo a: titulo, url, imagen.

Saludos amigo :)
 

Intel1

Miembro del equipo
16 Oct 2017
344
176
43

Hola amigo, como te dije anteriormente tienes que seguir el orden que tiene el codigo fuente de la pagina.

Para distinguirlos, solo tienes que ver el codigo y cual está primero, segundo, tercero, cuarto, etc y como lo usan, por ejemplo: para el titulo algunos usan alt="xxxxx" otros title="xxxxxxxx" otros <span>xxxxxxxx</span>. Tú solo tienes que identificar el titulo de la pelicula y ver con que patron (patron comun en todas las peliculas) sacar ese titulo.
 

bic

Usuario Activo
17 Oct 2017
732
147
43
Hola amigo Intel creo que ya tengo la seccion Estrenos montada

Pero me da fallo con este patron que esta aparentemente bien

upload_2018-1-29_17-26-0.png

Si quieres te mando el archivo para que le eches una ojeada

Voy a probar mientras con otra expresion regular,a ver si es verdad que ese no es el patron


Saludos amigo:)
 

Intel1

Miembro del equipo
16 Oct 2017
344
176
43

Hola amigo.

Si quieres obtener el url de ese código fuente, tienes que usar este patrón:

a href="([^"]+)

Con ese patrón obtienes lo que está entre parentesis, osea, lo que tienes en a href="lo que sea se obtiene"

Con tu patrón: " ([^"]+)

Obtienes TODO lo que esté dentro de comillas, sea a href="xxxxxxx" , img src="xxxxxx", yo solo "pelisultra xxxx" . Como te muestra la ventana de la derecha de regex: Match 1, group 1, Match 2, group 1, Match 3 group 1etc (En group 1)

En group 1, 2, 3 etc, deberias tener los datos que quieres.

Espero que me hayas entendido, tienes que ser específico en que datos quieres "obtener" para crear tu patron, de lo contrario obtendrás datos que no necesitas.

Y ya sabes, si tienes error, en el log detallado aparece los errores :)

Saludos.
 

bic

Usuario Activo
17 Oct 2017
732
147
43
Tampoco funciona poniendo solo a href="([^"]+) por mucho que digas que a ti solo te obtiene "pelisultra xxxx"


En el archivo Py que te acabo de enviar puedes ver que el patron esta puesto tal como dices y sigue dando fallo de estructura



¿ y como los saco del group 1,2,3 para pasarlos al archivo py ?:rolleyes:



Saludos
 

Intel1

Miembro del equipo
16 Oct 2017
344
176
43
Hola, tu problema no está en el patron, bueno no directamente :p

Está en el indentado, por eso te dije que vieras el log, y ya tienes que ir entendiendo mas o menos los mensajes del log:

File "C:\Users\admin1\AppData\Roaming\Kodi\addons\plugin.video.alfa\channels\pelisultra.py", line 58
patron = '"([^"]+)'
^
IndentationError: unexpected indent


Dice:" error de indentación no esperado"

Screenshot_20.jpg

Toda esa parte tiene que estar en la misma columna, osea debajo de la "d" de data de la linea 57.

Si te das cuenta la "p" de "patron" está debajo de la "a" de "data" y debería estar debajo de la "d" igual para lo demas hasta el "for"

Cambialo y prueba, pero igual tu patrón no está bien, tienes que ser mas específico en tu patrón, de lo contrario te tomará cualquier dato.

Primero corrije el error de la indentación y luego seguimos con lo que sigue :)

Saludos amigo :D
 

bic

Usuario Activo
17 Oct 2017
732
147
43
Gracias amigo Intel eso si que no lo sabia:eek:

Voy a probar a ver y seguimos

Saludos:)
 

bic

Usuario Activo
17 Oct 2017
732
147
43
Eso si que fue un buen fallo no poner bien todas esas columnas y eso no supe descifrarlo en el log crei que el error era del patron



Ahora mismo te digo el resultado y seguimos:)
 
Última edición:

Intel1

Miembro del equipo
16 Oct 2017
344
176
43
Hola amigo, se ha desaparecido Novedades porque tiendas 2 metodos mainlist (def mainlist) y 2 metodos peliculas:

Screenshot_20.jpg

Todo el itemlist.append del segundo mainlist lo tienes que poner abajo del itemlist.append del mainlist y borras todo el segundo mainlist.

El metodo peliculas (def peliculas) deja el primero como está y el segundo le puedes poner: def estrenos. Y en el action del itemlist le pones action="estrenos", el action quiere decir que va a hacer cuando haces click a la categoria, en este caso va a "def estrenos(item)"

Y el mainlist te deberia quedar algo así:

def mainlist(item):
logger.info()
itemlist = []
itemlist.append(Item(channel = item.channel,
title = "Novedades",
action = "peliculas",
url = "Ver Películas Online Hd Español Latino - PelisUltra"
))
itemlist.append(Item(channel = item.channel,
title = "Estrenos",
action = "estrenos",
url = "http://www.pelisultra.com/estrenos"
))
return itemlist


Igual tu patron sigue mal, por eso no puede deseampacar los valores.

Prueba con eso haber si te apacere Novedades y Estrenos y continuamos.

Saludos amigo :)
 

bic

Usuario Activo
17 Oct 2017
732
147
43
Mira amigo Inter1 todos esos cambios que me indicas hacer en el archivo PY en el foro están incorrectamente explicados y con esas explicaciones el archivo ni queda ni se parece al ejemplo que tu pones que debería parecerse





Para explicarme todos esos liosos cambios que no cuadran ni quedan como dices que deberían quedar mas o menos seria mejor que esos cambios los hubieras hecho tu en el archivo y eso hubiera sido mas simple,sencillo y correcto





Ademas no debería quedar mas o menos,para que funcione debería quedar exactamente como se explica y deberías explicarlo diciendo los números de línea en los que se deben eliminar y cambiar cosas por que para eso el notepad++ lleva las líneas numeradas







Asi que resumiendo si quieres tu hacer esos cambios en el archivo y mandármelo continuamos y si prefieres decidir que no en ese caso por mi parte aquí terminarian mis intentos por aprender de manera definitiva,al menos contigo



TU DECIDES





Por que empiezo a sospechar desde hace un tiempo que tu no quieres que yo aprenda si no dificultarme y liarme las tareas para que no aprenda y abandone la idea de aprender





Y todo esto lo pongo también en el foro para que sea publico



Ademas es posible que no seas el amigo que yo pensaba que eras y tu dices ser



Saludos y disculpame por ser tan claro pero ya sabes que yo al pan le llamo pan y al vino le llamo vino

P.D

Si algun otro desarrollador desease comprobar que mi archivo py con sus explicaciones no queda como el dice que deberia quedar en el ejemplo que el pone puedo subir el py para comprobarlo y bien claro esta que no usa los numeros de linea para facilitar cambios exactos,no ni mas ni menos como el dice por que sabemos que mas o menos los cambos no funcionan
 
Última edición:

Delta

Miembro del equipo
16 Oct 2017
1.200
1
1.313
113
@bic sinceramente, no creo que alguien tuviese la paciencia que intel te ha tenido como para que lo acuses de no explicarte bien o que intenta hacer que dejes de aprender, ha dedicado tiempo en tu aprendizaje y realmente no creo que haya otro desarrollador que te de la atencion que te dio el, yo mismo te he comentado que intentes analizar y deducir el funcionamiento de otros canales, son distintos dices, pero todos tienen algo en comun, eso te lo aseguro. Preguntas muchas cosas y te dan las respuestas a mi modo de ver no es la forma de aprender, si no entiendes lo que estas haciendo no podras aprender nada, el manual es claro... deja una seccion, con una pagina funcional... de ahi en mas solo tienes que entender como ser armo todo y repetir y agregar lo necesario... te repito investiga, lee, observa otros canales.
Si esperas que otro desarrollador te haga el canal o te ayude como intel... mejor vete olvidando de esto, tan solo piensa que este manual esta hecho con una web de las mas faciles de hacer para que puedan aprender.
Saludos
 

bic

Usuario Activo
17 Oct 2017
732
147
43


En primer lugar no espero que nadie me de el canal hecho por que asi no se aprende pero poner esas explicaciones en caso de ser correctas es como hacerlo,de todas formas recordar que en este caso hablamos solo de una parte del canal,en concreto de la que se habla en estos ultimos comentarios la seccion Estrenos por considerar incorrectas esas explicaciones,nunca hablo de un canal entero ni mucho menos

En segundo lugar ni siquiera vale repetir la primera parte del manual ni siquiera para añadir otra seccion,eso es lo que yo he intentado hacer y esta claro que hasta para eso ya hay cambiar la forma de estructurarlo sin conocimienros ni saber como hacerlo,solo buscando otros canales que puedan ser parecidos para tener una pista o una idea ( no estan mal las herramientas o ayudas ):rolleyes:


Tercero el manual esta bien pero con el no se puede pasar de la primera pagina funcional,por que para simplemente añadir otra seccion tan solo coinciden algunas cosas o se parecen y lo demas para agregar una seccion ya empieza a cambiar bastante en estructura y el manual no explica como seguir haciendolo correctamente,en todo caso se puede aprender a sacar patrones eso si se puede repetir


Otra cosa que no se puede es sacar esa primera parte del manual y la otra dentro de un año o mas o vete a saber cuando y esperar que asi alguien aprenda a crear canales y si ademas los desarrolladres no van a dar atencion en enseñar y solo esperar que algun desarrollador lo haga y tenga paciencia menos asi todavia se puede aprender


Por ultimo he intentado tratar a Inter1 como un amigo durante tiempo,desde antes de esto llamarse Alfa y lo mismo hago con todo el que se puede y lo desea pero a veces hay que ver si eso es posible y si la confianza y el apoyo van en la direcion correcta,de todas formas creo que la amistad es eterna y nunca se la niego a nadie mientras sea amistad sana y verdadera y me encantaria tener amigos para toda la vida,conforme a mi concepto de la amistad


Finalmente mencionar Delta que este manual y forma de enseñar sera todo lo buena y facil que tu quieras observando otros canales,investigando y leyendo pero como resultado he sido el unico en apuntarse y dedicarle tiempo e interes y a pesar de eso y la dificultad he seguido y eso sin ver las herramientas de las que me hablabas aparte de un pequeño manual,pero preguntate por que no han hecho lo mismo bastante mas gente y solo se a apuntado uno


En cuanto si voy a continuar o no,dedicare un tiempo a ver si es posible hacer esto y avanzar,por ahora solo veo dificultad,atascos y poca gente que intente enseñar,la unica herramienta para enseñar son consejos a veces buenos y otras no tanto y otras no son practicos,tambien experiencias de como otros han aprendido


En fin lo dicho si en algun momento veo luz en esto y que sea posible aprender a lo mejor lo intento de nuevo,tambien es facil y comodo hacer lo que todos lo demas y nadie necesita realmente hacer esto por lo que no hace falta invitarme a olvidarme diciendo o insinuando que espero que me den los canales ya hechos,pero de momento ya que me invitas a hacerlo y insinuas que espero que me den los canales hechos y dejas claro que no hay gente ni desarrolladores para orientar o enseñar ya solo por esto te tomo la palabra y me voy olvidando por lo comodo,por no necesitarlo y por de momento no ver forma de llegar a aprender lo suficiente ni ver manera de prosperar


A ver que pasa ahora y cuanta gente se apunta y si no le salen telarañas a este manual si yo no llegase a ver algo que me convenza de que con esto puedo aprender realmente a crear canales o arreglarlos algun dia por mucho tiempo,interes y paciencia que se dedique a este manual


Saludos:)
 
Última edición:

danielr460

Miembro del equipo
18 Oct 2017
76
43
18
30
hola bic pues, mmm bueno lo primero que tienes que saber es que el orden que tienes que poner para el patron es el que te pone la web en el caso de pelisultra seria:
ss7QXPh.png

URL, Imagen y nombre que se ve en el código fuente de la página. y pues alli los puedes distingir, si quieres hacerlo, le das click derecho a la imagen y le pones inspeccionar (en chrome) (al principio sale publicidad, asi que hazlo hasta que salga) y en la parte superior izquierda hay una flecha de mouse (la que yo tengo en color azul) y puedes ver lo que estas seleccionando tanto en el fuente como en la pagina.
Saludos
 

Intel1

Miembro del equipo
16 Oct 2017
344
176
43
Hola @bic, (ya no se si llamarte amigo como dices tú, por todas las cosas que has dicho sobre mí)


Cómo sabes que está mal los cambios que te he dicho? los has intentado probar?


Yo no puedo hacer el canal que intentas hacer, todas las modificaciones de las lineas las tienes que hacer tú no yo, yo solo te digo como tienes que cambiarlo, o mejor yo te armo el canal como dices y tú solo lo usas? como dices aquí: "seria mejor que esos cambios los hubieras hecho tu en el archivo y eso hubiera sido mas simple,sencillo y correcto" Lo correcto es que tú lo hagas para que aprendas y si tienes dudas preguntar.



En la programación, no hay nada "exacto", es de acuerdo a tu forma de programar, hay mil maneras para obtener el mismo resultado.



Ya te contesté que yo no voy a hacer esos cambios, los tienes que hacer tú, Y DECIDO YA NO AYUDARTE ni incentivarte como siempre a que programes, incluso desde el foro mimedia y eso no lo puedes negar, incluso te dije para hacer una videoconferencia para ir enseñandote y nunca me respondiste, así que no puedes ir difamando por cualquier lado que yo lo que hago es enredarte mas para que no aprendas; si a todas tus dudas siempre te he contestado, si no entiendes o no quieres entender o no me hago entender pues preguntas y ya! y no digas que yo lo hago para que no aprendas que es todo lo contrario.


No se si hay habrá algún otro desarrollador que haya tratado de enseñarte o tenga la paciencia que yo he tenido hacia tí, que te ayude en buena hora.

Es todo lo que tengo que decirte.
 

bic

Usuario Activo
17 Oct 2017
732
147
43

Por supuesto que los intente probar ayer mismo nada mas que publicaste el mensaje,encontrandome con que el canal no queda como tu indicabas que debia quedar mas o menos y repito que no se por que no usas los numeros de linea para indicar y facilitar esos cambios




Nunca te pedi que hicieras el canal por mi ni lo esperaba y las modificaciones se que tengo que hacerlas yo y te escribi diciendote que no sabia ni entendia por que daba esos errores el canal y te agradezco que me dijeras lo que hay que cambiar siempre y cuando sean correctos
los cambios pero si no lo son no puedo agradecertelo y ya he manifestado que tal como lo explicaste ni siquiera he podido entender que el canal quede como tu decias que debia quedar mas o menos,insisto en que usar los numeros de linea del notepad++ es algo muy util para que los cambios se puedan entender,esto es algo muy sabido que no se deberia repetir ni decir tantas veces


De acuerdo en lo de la forma de programar y que hay mil maneras para obtener el mismo resultado no voy a discutirte eso


Pero sabemos que en un archivo python un punto,coma,una letra mal puesta o una letra mas o menos y el archivo no funciona y mas cuando un archivo no queda como se indica que debe quedar,por eso no vale que quede mas o menos





Me parece muy bien que me contestes eso y decidas no ayudarme,pero ya deje bien claro desde ayer en respuesta a Delta que no continuo con el manual ni con la tarea de aprender por lo tanto esta claro que no hace falta que me ayudes y que a fecha de hoy ya sobra decirmelo y que no vas a hacer los cambios por mi,es obvio que no


Recodermos que ya decidi ayer no continuar aprendiendo antes de respuestas como esta

No niego que tratabas de incentivarme desde los tiempos del foro mimedia nunca lo he negado ni nadie aqui nos pregunto nunca por ese asunto,pero sabes desde entonces tambien que no se programar ni nada de python y que sin conocimientos es dificil aprender y hasta imcluso decidirse a intentarlo,por lo que incentivar solamente nunca es suficiente pero ahora que sacaste ese manual quise intentarlo y hacerte caso por fin,pensaba que era una buena ocasion para aprender y queria colaborar en el foro por que se que el equipo de Alfa es pequeño y hace falta gente que ayude


Pero publicar esa pequeña parte del manual y la otra quen sabe cuando tendrias pensado sacarla no me parece suficiente para aprender ni una buena idea,creo que mejor idea es sacar el manual de una vez completo


Tambien quiero recordarte que he sido el unico en seguir ese manual y ahora que dejado de hacerlo ya veras como le van a salir telarañas a ese manual y me gustaria ver si alguien mas se apunta

Lo de la videoconferencia no creo que hubiese sido mucho mejor para aprender,es verdad que tarde un poco en responderte,pero recuerdo que te envie un correo diciendote que no uso skype ni redes sociales de ningun tipo y tan solo me descargue Telegram para hacer consultas en Alfa y no me funciona para eso


 
Última edición:

Paquito Porras

Usuario
9 Nov 2017
101
19
18
34
Gracias por compartir el manual. Yo sí tengo algún conocimiento de Python y me ha quedado claro cómo se añaden las categorías y como se extraen los datos mediante los regex. Mi problema es la falta de tiempo, si no, podría intentar hacer yo el canal de Pelisultra.
Saludos.
 

Paquito Porras

Usuario
9 Nov 2017
101
19
18
34
Hola @Intel1
al final pude sacar algo de tiempo y he creado la estructura básica para el canal PelisUltra.
Por ahora es muy básico y bastante mejorable, pero es un principio.
Cosas mejorables a primera vista:
  1. El menú GENEROS debería llevar a un sub-menú con los géneros en vez de ponerlos en el menú principal, cosa que he hecho por falta de conocimiento.
  2. Una vez dentro de una peli o serie, en algunos casos se muestran los enlaces y en otros no. Habría que revisar eso para arreglarlo.
  3. Poner una imagen para el canal.
Si saco más tiempo, podría intentar corregir estos puntos, pero ya requeriría de investigación porque en el manual que habéis publicado no lo pone.

@bic te animo a que eches un vistazo al canal, seguro que se resuelven muchas de tus dudas. Realmente es un canal sencillo porque con el mismo patrón (regex) se extraen tanto las pelis como las series, no he tenido que hacer un patrón distinto por cada sección.
Saludos.
 

Adjuntos

  • pelisultra.zip
    1 KB · Visitas: 11