Aquí puedes encontrar código, diseño, Web y también de nuestro adorado Gnu/Linux.
24
Ene
08

Leyendo los feed con php

feed

Magpie es una de las clases de PHP que deberíamos siempre tener a mano . La utilización de esta clase sirve para desplegar los feed de algún sitio amigo en nuestra pagina web , por ejemplo yo lo uso para ver los feed de youtube o de algún periódico que me interesa.

Vamos a ver un pequeño ejemplo

1. Descargar la clase del sitio oficial click aquí para bajar

2. Creamos un carpeta llamada verfeeds adentro alojamos la clase y creamos una carpeta cache(con permisos de escritura).

feeds

3. Empezamos a programar el index.php para leer un feed del Comercio de Perú

PHP:
  1. <?
  2.  
  3. define('MAGPIE_DIR', 'magpierss-0.72/');
  4. require_once(MAGPIE_DIR.'rss_fetch.inc');
  5.  
  6.  
  7.     $rss = fetch_rss("http://feeds.feedburner.com/el-comercio-portada?format=xml");
  8.      echo "<pre>";
  9.      print_r($rss);
  10.      echo "</pre>";
  11.  
  12. ?>

El resultado de este código será el siguiente:

PHP:
  1. (
  2.     [encoding] => UTF-8
  3.     [title] => El Comercio Peru - Online - todas las noticias
  4.     [link] => http://www.elcomercioperu.com.pe
  5.     [description] => Diario El Comercio. Noticias del Perú; Feed Oficial, generado por elcomercioperu.com
  6.     [lastBuildDate] => Wednesday
  7.     [items] => Array
  8.         (
  9.             [0] => Array
  10.                 (
  11.                     [title] => Estudio revela que deshielo en la Antártida aumentó en un 75% en los últimos 10 años
  12.                     [link] => http://www.elcomercioperu.com.pe/ediciononline/HTML/2008-01-23/estudio-revela-que-deshielo-antartida-aumento-75-ultimos-10-anos.html
  13.                     [description] => Los deshielos fueron causados por una aceleración en el flujo de los glaciares antárticos hacia el mar. El avance más rápido de las masas de hielo se debió a un aumento de las temperaturas del mar<img src="http://feeds.feedburner.com/~r/el-comercio-portada/~4/222027223" height="1" width="1"/>
  14.                     [pubDate] => Wednesday
  15.                 )
  16.  
  17.             [1] => Array
  18.                 (
  19.                     [title] => Perú quedó eliminado del Sudamericano Femenino
  20.                     [link] => http://www.elcomercioperu.com.pe/ediciononline/HTML/2008-01-23/Peru-quedo-eliminado-Sudamericano-Femenino.html
  21.                     [description] => La selección sub 17 de Brasil venció 3-0 y clasificó como primero del grupo. Argentina también pasó a la siguiente etapa<img src="http://feeds.feedburner.com/~r/el-comercio-portada/~4/222027224" height="1" width="1"/>
  22.                     [pubDate] => Wednesday
  23.                 )

Esto es un array gracias a print_r lo podemos imprimir completo , ya con funciones de array y de string la podemos trabajar, vamos a volver a programar el index.php

PHP:
  1. define('MAGPIE_DIR', 'magpierss-0.72/');
  2. require_once(MAGPIE_DIR.'rss_fetch.inc');
  3.  
  4. $url = $_GET['url'];
  5.  
  6. if ( $url ) {
  7.     $rss = fetch_rss( $url );
  8.     echo "Channel: " . $rss->channel['title'] . "<p>";
  9.     echo "<ul>";
  10.     foreach ($rss->items as $item) {
  11.         $href = $item['link'];
  12.         $title = $item['title'];
  13.         echo "<li><a href=$href>$title</a></li>";
  14.     }
  15.     echo "</ul>";
  16. }
  17. ?>
  18.  
  19. <form>
  20.     Ingresa el feed que deseas leer: <input type="text" size="30" name="url" value="<?php echo $url ?>"><br />
  21.     <input type="submit" value="Parse RSS">
  22. </form>

Ver demo

Descargar todo el tutorial

0 Comentarios

Deja tu comentario

* Campo Requerido

* Campo Requerido

* Opcional