2009-09-23 38 views
5

Solo me preguntaba si alguien podría sugerir una biblioteca PHP que me permitiera leer los datos de una fuente RSS y escribirla en una base de datos MySQL. Además, si es posible, proporcione un enlace a la documentación sobre cómo hacer esto.Feeds RSS en PHP

Gracias

Respuesta

3

Simplepie es probablemente el más popular librería PHP RSS.

2

Leyendo datos que simple es algo para lo que podrías usar simplexml.

http://www.ibm.com/developerworks/library/x-simplexml.html

Desde allí se puede ver lo fácil que es tomar los datos, en lugar de mostrar, que almacena en una base de datos.

Gotchas: RSS mal formateados (ver arriba Tut) sabores diferentes de RSS (ídem) valores malos en el RSS - es de datos extranjeras y debe ser manejado con recelo dependencia de allow_url_fopen - tal vez usar cURL

+0

Esto es exactamente lo que hago, utilizo cURL para buscar los feeds y almacenarlos en caché cada x horas. Y uso SimpleXML para extraer la información relevante. –

10

RSS es un formato bastante simple: no hay una gran necesidad de usar una biblioteca por separado.

Solo usaría simplexml, porque no quiero dedicar el esfuerzo a aprender otra biblioteca y estar al día de su desarrollo.

Aquí es un simple script PHP para mostrar los últimos mensajes Stackoverflor con simplexml:

<?php 
$rss = simplexml_load_file('http://stackoverflow.com/feeds'); 
?> 
<h1><?php echo $rss->title; ?></h1> 
<ul> 
<?php 
foreach($rss->entry as $e) { 
    echo "<li><a href=\"".$e->link['href']."\">"; 
    echo $e->title; 
    echo "</a></li>\n"; 
}  
?> 
</ul> 
0

También puede dar una oportunidad de XPath, bastante simple de usar.

1

SimplePie es definitivamente el camino a seguir. Puede descargar y analizar una fuente RSS en menos de 10 líneas de código. Hay un tutorial here que le muestra cómo hacerlo.