iptv icon indicating copy to clipboard operation
iptv copied to clipboard

URLs de Shows/Películas online

Open JoseBarakat opened this issue 8 years ago • 13 comments

Hola.

He estado intentando extraer las URLs de un par de Series de TV para verificar si es posible hacer listas con estas. Ya he mecanizado el procedimiento con las herramientas de desarrollo de Firefox (Chrome también aplica) en la sección de monitoreo de red, aunque sin éxito. Este método si funciona, pero los servidores (ej: uploaded, filescdn, etc...) le asignan a la url, un tiquet (string alfanúmerico) de descarga que expira en menos de 24 horas, así que la url expira también (pero el archivo correspondiente permanece en el servidor). Si se reproduce a través del reproductor del sitio, esto no ocurre (quizás también corre un script que al ejecutarse pida un nuevo tiquet/token)

Si alguien conoce un método diferente o análogo para obtener estas URLs, podríamos lograr algo interesante, ya que están disponibles varias series en español de latinoamerica con buena calidad de audio y con resolución de video 720p.

Nota: Ver estos shows en dispositivos Android que no soportan Flash o de bajas especificaciones es una tarea casi que imposible y engorrosa, así que la opción IPTV através de apps como VLC, solucionan este inconveniente.

Gracias

JoseBarakat avatar Apr 21 '17 15:04 JoseBarakat

No entiendo de dónde sacas las URL o los recursos/series/links?

russellhoff avatar Apr 24 '17 06:04 russellhoff

Podrías poner ejemplos de un sitio que tenga las series que mencionas, y la URL que obtuviste con las herramientas de desarrollo. No obstante, buen trabajo.

serncl avatar Apr 24 '17 20:04 serncl

Hola @russellhoff y @serncl, gracias!

Así es, las URLs la he obtenido de diversos sitios de pelis y series online usando las herramientas de desarrollo de Firefox (como comenta @serncl).

El método es sencillo pero es algo tedioso porque la mayoría de veces estos sitios colocan una cantidad de publicidad. Explicado para alguien que no está familiarizado, sería así:

  • Voy a tomar como ejemplo al sitio Animotion. El admin utiliza un servidor del cual no he podido sacar una url estable, aunque las series tienen muy buena calidad de video y audio y están en Español de Latinoamerica.

  • Busca la pelicula o serie a extraer sus url. Yo usaré Teen Titans: The Judas Contract

captura de pantalla de 2017-05-03 00-49-48

  • Al hacer click sobre la carátula, llevará al preview de la pelicula en openload.

captura de pantalla de 2017-05-03 00-50-18

  • En este punto ya se pueden abrir las herramientas de desarrollador (usualmente presionando el botón F12). En Opera (utiliza las mismas que Chrome/Chromium), se deben habilitar mediante el Menú > Desarrollador > Herramientas de Desarrollo o Ctrl+Shift+I.

captura de pantalla de 2017-05-03 00-51-58

  • Al hacer click una vez en el botón de reproducir sale el primer Ad. Ignorarlo o usar AdBlock/ABP/uBlock Origin/ etc...

  • En las herramientas de desarrollo, se debe entrar en el Monitor de Red haciendo click en su pestaña o presionando Ctrl+Shift+Q (En Firefox). Aquí se monitorizan las peticiones al servidor, su estado, las URLs de los recursos que se piden, encabezados HTTP, etc... A mi solo me interesan las URLs de los videos que se piden así que presiono el botón de Medios para cuando se transmiten videos en formato "mp4", "avi" o también el botón "Flash" si se transmite en formato flash (muy raro estos días), y el botón "Otro" para streaming de formatos como "ts" y similares (que no son tan populares). captura de pantalla de 2017-05-03 01-39-37

  • La ventana me pide que cargue el contenido o que recargue la página para empezar a monitorear, así que doy click por segunda vez en el botón de reproducir, el video empieza a cargar, y el monitor de red me muestra las peticiones del video correspondiente.

  • Al hacer click en la petición, me muestra su estado: "206 Partial Content" (Es normal ya que es streaming y solo se necesita parte del contenido para que se reproduzca) y demás información técnica. Para copiar la URL del video solo es necesario hacer click derecho sobre la petición y hacer click en "Copiar URL" en el menú contextual.

captura de pantalla de 2017-05-03 00-53-57

captura de pantalla de 2017-05-03 00-54-37

  • En los Encabezados de Respuesta (son los datos que envía el servidor como una respuesta sobre el video o contenido seleccionado) se puede ver, en el encabezado Content-Range que su valor es bytes 0-883936652/883936653. Esto significa que el tamaño total del contenido (del video) seleccionado es de aproximadamente 883 MB.

captura de pantalla de 2017-05-03 01-43-48

  • Para verificar que esta URL es válida, la pego en la barra de direcciones del navegador y... pum! HTML5 Video, listo. Este video se puede reproducir/pausar/adelantar/retroceder sin problemas en navegadores de celulares y tablets (probado en Android 4.4) y dispositivos con VLC Player y, por ende, se puede insertar la URL en cualquier lista IPTV.

captura de pantalla de 2017-05-03 01-06-19

captura de pantalla de 2017-05-03 01-10-43

  • Obtuve un error al reproducir el contenido en VLC mientras lo reproducía en el navegador (tal vez debido a algún tipo de restricción del servidor a reproducir el mismo contenido desde la misma dirección IP en diferentes instancias, no lo se...)

captura de pantalla de 2017-05-03 01-11-04

  • Pero al cerrar la reproducción en Firefox....

captura de pantalla de 2017-05-03 01-12-40

Gracias. Espero sus comentarios.

Nota: He hecho el procedimiento dos veces y el server de Openload me ha respondido con 2 URLs distintas:

  1. https://oqbkic.oloadcdn.net/dl/l/D-YmrtvaaeQhPMiG/UAm_itfbgPg/J.Ttns.Ctr.Jds?mime=true
  2. https://oqbkic.oloadcdn.net/dl/l/sXqtGidXwSru1gy_/UAm_itfbgPg/J.Ttns.Ctr.Jds?mime=true Como si utilizara alguna especie de token para cada petición, así que si la URL deja de funcionar para una futura reproducción, podría deberse a esto. Mi propuesta es que intentemos este procedimiento con otros servidores de video y veamos cual permite extraer una URL estable para su uso en listas IPTV.

JoseBarakat avatar May 03 '17 06:05 JoseBarakat

Ya te entendí! Muy buen trabajo :)

russellhoff avatar May 03 '17 08:05 russellhoff

Buenos días.

Bien, definitivamente Openload coloca ciertas restricciones de tráfico mediante tokens para regular el uso de ancho de banda y recursos del server. Así que este no es el camino, por lo menos con este tipo de servidores. Seguiré intentando con otros servidores. Según un compañero de estudios, la mejor opción sería utilizar la API de Openload con su key (tocaría averiguar si es gratuita o paga) para generar una nueva URL con un nuevo token a petición. Ya que esto conlleva escribir los script generadores de URLs, la otra opción sería generarlas desde una app, cosa que en el futuro cercano no tengo en mente pero si en el futuro a mediano plazo.

Exitos y tema cerrado.

JoseBarakat avatar May 04 '17 18:05 JoseBarakat

Es gratuita. Acabo de registrarme.

russellhoff avatar May 05 '17 07:05 russellhoff

@russellhoff Has visto la documentación de la API de Openload (o cualquier otro servidor de pelis y series)? La verdad he estado ocupado en otros proyectos. Si crees que se puede hacer algo para que nos den un token actualizado cada vez que hacemos una petición, abrimos el tema de nuevo y nos ponemos a trabajar. Gracias a todos y Éxitos!

JoseBarakat avatar Aug 05 '17 06:08 JoseBarakat

Oh, http://animeyt.tv utiliza una cantidad de servers para sus animes. Así que debe haber una forma de hacerlo.

JoseBarakat avatar Aug 05 '17 06:08 JoseBarakat

Si ven el canal de FreeWorldMedia en YouTube, el tiene una cantidad de scripts (claro que en Python para Kodi, y yo manejo JavaScript) que permiten ver varios streams de IPTV con una calidad buena (no es 4k pero se ven bien y sin latencia). Podríamos investigar por ahi. De nuevo, Saludos y Ëxitos.

JoseBarakat avatar Aug 05 '17 06:08 JoseBarakat

Bien. He intentado con la API de Openload según comentario de @russellhoff y este fué el resultado:

  • He intentado con la siguiente URL (Primer episodio): https://oql960.oloadcdn.net/dl/l/Z5zc-Dw2cwnyh-rf/DWpiT7yjjho/S.Tas.C01?mime=true Al entrar la URL directamente en la barra de direcciones del navegador (en mi caso Firefox v54), arroja un mensaje en formato JSON diciendo que el recurso no está disponible:
{
"status":404,
"msg":"download token not found Z5zc-Dw2cwnyh-rf"
}

Obviamente, el token asignado en ese momento (20 de abril del 2017) caducó y eso hace que el recurso no esté disponible al público, por más que si se encuentre el archivo en el servidor. Los tokens de Openload caducan en HORAS, entonces la idea es generar un token actualizado para cada URL antes de que este caduque.

Para esto no es necesario registrarse (ya hice la prueba). Pueden ustedes hacerla también: Según la documentación de la API de Openload, para pedir un Download Ticket se necesita hacerles una petición HTTPS con el siguiente formato:

https://api.openload.co/1/file/dlticket?file={file}&login={login}&key={key}

Donde: {file} = Es lo único que necesitamos, es una cadena de texto de 6 caracteres, un File-ID (identifica al archivo). {login} y {key} = Login y Password del usuario registrado.

Para la URL anteriormente mencionada, {file} sería equivalente a oql960

Así que si conoces JavaScript, esto se haría con una petición HTTPS a una API REST (o con el novedoso GraphQL, el cual no he tenido tiempo de revisar). Si no, simplemente entra en tu navegador web y escribe:

https://api.openload.co/1/file/dlticket?file=oqfnx7

Se descarga un fichero sin extensión que se puede guardar en cualquier carpeta con tranquilidad y se ve en un editor de texto (Notepad, Notepad++, SublimeText, Atom, VSCode, etc...). El texto dentro del archivo tiene la sintaxis JSON, porque es un Objeto de JavaScript. Ahí pueden encontrar tanto el TOKEN como la DURACION del token.

{
  "status": 200,
  "msg": "OK",
  "result": {
    "ticket": "oqfnx7~~1502088946~n~~0~8wE26a21TcSBrAt0",
    "captcha_url": false,
    "captcha_w": false,
    "captcha_h": false,
    "wait_time": 3,
    "valid_until": "2017-08-07 07:10:47"
  }
}

Nótese la necesidad de pasar por un captcha que arroja una cadena de texto como respuesta.

Bien. Por el momento está rsuelto lo del token de descarga. Con el File-ID y el token de descarga se genera el Link de Descarga.

Imagino que cada servidor tendrá un método similar (tal vez más sencillo o más complicado) de generar un link de descarga y a la vez de proteger sus recursos como el ancho de banda, evitar un ataque de DoS y muchas otras cosas.

Por el momento descanso, sabiendo que es posible generar una app, ya sea web app o native app, para crear las listas.

Gracias.

JoseBarakat avatar Aug 07 '17 07:08 JoseBarakat

Hola @JoseBarakat !!

No he visto nada, ultimamente no estoy teniendo tiempo. De todos modos, si encuentro un hueco te lo haré saber, ok?

Un saludo!

russellhoff avatar Aug 08 '17 08:08 russellhoff

mi experiencia (de momento no se puede, si el texto a continuación les ayuda, por favor me escriben con la respuesta u solución.) cuando usted carga un iframe de openload se asignan todas las variables o tributos necesarios para la reproducción del video final. cuando usted inspecciona el código busque el siguiente tag DtsBlkVFQx ejemplo < p style="" class="" id="DtsBlkVFQx">ID-IMPORTANTE< /p >

este código id el url final que se necesita para armar el url final para el video., brincándose todos los *-u-t-o-s anuncios.

https://openload.co/stream/ID-IMPORTANTE?mime=true

construyendo el url se tendría acceso al video final.

donde radica el problema: 1- uno debe hacer un scrapper en php para obtener la información del iframe o del url embed de openload. IMPORTANTE: existe algun js(openload) que en ves de mostrar el ID importante se muestra un mensaje que indica "640k muy bueno para ser verdad" ya que js valida la session media en tamaño(largo y ancho). Y como en el scrapper no viaja informacion del windows-size, no se puede obtener el ID-IMPORTANTE 2- si hago un scrapper en .net si puedo tener acceso a esta sección, pero casi todos tenemos los servicios php mysql.

(si el texto a les ayudo, por favor me escriben con la respuesta u solución.)

guntercn avatar Sep 21 '18 03:09 guntercn

Tengo la misma inquietud y problema, ustedes dieron con la solución? De hacer el link m3u8, accesible en el tiempo y desde cualquier IP pública? Es un tema complicado por mucho a resolver ... Avisen cualquier avance y pista para solucionar al respecto. Saludos en la distancia

david2803 avatar Jan 28 '24 18:01 david2803