Creando listas m3u desde la web
Creando listas m3u desde la web

AVISO: Esta entrada tiene más de dos años desde su publicación. Es posible que el contenido esté desactualizado.

listas m3u desde la webEl post que voy a colocar hoy es algo que tenía pendiente desde hace algún tiempo. Se trata de un pequeño programa con el que poder tener una lista de canales m3u desde la web. En este post no voy a publicarlo todo, pero si lo suficiente para que todo aquel que quiera pueda montarse su propio scrapper de enlaces.

Para poder realizar el tuyo propio solo necesitaras tener montado un servidor local (un XAMPP puede valerte). También será necesario un editor de código (en mi caso yo utilizo Sublime Text3). Es evidente que necesitas Kodi y LiveStream Pro

Creando listas m3u desde la web para LiveStream Pro de Kodi

Abrimos el archivo index.php y en el podemos añadir algo como lo siguiente:

#URL en la que buscar. Se puede pasar por POST o añadirla directamente entre ""
$url = file_get_contents($_POST['direcciones']);
             
//creamos la variabale para el DOM
$dom = new DOMDocument();
//cargamos el html de la url. Se le añade el @ para evitar que se cuele algún error
@$dom->loadHTML($url);
//creamos la variable para DOMXPATH 
$xpath = new DOMXPath($dom);

//buscamos dentro de $xpath con evaluate los enlaces dentro de la etiqueta body  y dentro de la de html
$hrefs = $xpath->evaluate("/html/body//a");

//buscamos la dirección del logo
$logos = $xpath->evaluate("/html/body//a//img");

//Línea informativa. La variable POST indica la URL que se le pasa
echo "#EXTM3U";
echo "<p>#EXTINF:0 tvg-logo='http://3.bp.blogspot.com/-y4unZ0eDvwI/Va0iM4h5RUI/AAAAAAAAAXI/kzRDvCxSVxg/s1600/m3u.jpg', [B][COLOR red]Listado de canales importables desde ".$_POST['direcciones']." (Pueden tardar un minuto o así en cargar, en caso de que funcione.)[/COLOR][/B]<br/>http://pornicoidico.net</p><br/>";

//Bucle para recorrer todos los enlaces de la página web
for ($i = 0; $i < $hrefs->length; $i++) {
     //buscamos la dirección del canal
     $href = $hrefs->item($i);
     //buscamos la dirección del logo
     
     //nos quedamos con el valor del href             
     $cadena = $href->getAttribute('href');
     
     //nos aseguramos que tenemos una url para el logo             
     if($logos->item($i)!==null){
            //guardamos la iteración
            $logo = $logos->item($i);
            //nos quedamos con el valor del src
            $logoF  = $logo->getAttribute('src');
            //Primera parte de cada uno de los enlaces
            echo '#EXTINF:-1 tvg-id="" tvg-name="" tvg-logo="" group-title="ESPAÑA", '[email protected]$cadena.'<br />';
            //Segunda parte de cada uno de los enlaces
            echo 'plugin://plugin.video.SportsDevil/?mode=1&amp;item=catcher%3dstreams%26url='[email protected]$cadena.'%26referer={Aquí hay que colocar el dominio} <br/><br/>';
      }

}

Aclaraciones para realizar listas m3u desde la web

En la última línea hay que asegurarse de incluir el nombre del dominio (http:// incluido). Con esto Kodi lo interpreterá correctamente.

Este código es mucho más que mejorable, pero es una buena primera base para todo el que quieras fabricarse sus propias listas m3u desde la web de turno que emite. Quiero aclarar que este no es un sistema 100% efectivo, y mucho menos sin modificar el código que acabo de dejar.

Algunos de los canales que emiten estas páginas web tienen una codificación diferente a la que SportDevil no puede plantarle cara. Otros de los canales pueden tardar un poco en cargarse (cosas de SportDevil).

En caso de que queráis obtener enlaces que incluyen las url que se obtienen con el código que podéis leer en este post, sería necesario buscar el iframe que emite. Pero esto es solo una idea.

Como ya he escrito, yo he desarrollado este código un poco más. Todavía le falta afinar un poco, pero por el momento he conseguido listar la mayoría de los canales que aloja una web. Tiene además añadido el logo cada uno de los registros obtenidos. Esto como digo necesita una afinación y a que los últimos logos no corresponden con los canales. Además algunos de los canales se repiten teniendo la misma url. Pero bueno, es cuestión de mejorarlo un poco.

Si queréis ver un resultado de la lista m3u desde la web con canales en español, lo tenéis disponible en el siguiente enlace.

LISTADO M3U

… como siempre digo. Desde entreunosyceros solo animamos a aprender de este post. En ningún momento a utilizarlo ya que a estas alturas, creo que ya no funciona.







¿Qué te ha parecido este post?

¡Haz clic en una estrella para calificarla!

Puntuación media 5 / 5. Recuento de votos: 2

¡No hay votos hasta ahora! Sé el primero en calificar esta publicación.

No te pierdas otros artículos ...

¡Síguenos en las redes sociales!

¡Lamentamos que esta publicación no te haya sido útil!

¡Permítanos mejorar esta publicación!

¿Cuéntanos cómo podemos mejorar esta publicación?

Deja una respuesta

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.