python rss feedparser

Biblioteca de analizador de fuentes RSS en Python



feedparser (7)

En respuesta a su seguimiento. Podría usar BeautifulSoup, pero el feedparser está mucho mejor orientado a la entrega de RSS.

No es para morirse de risa, pero ¿has leído la documentation parche? No sé cómo podría ser más simple de usar.

Estoy buscando una buena biblioteca en python que me ayude a analizar las fuentes RSS. ¿Alguien ha usado feedparser? ¿Cualquier retroalimentación?


Recomiendo encarecidamente feedparser.


Sé que este es un tema muy antiguo, pero por lo que vale, estaba usando feedparser (Universal feed parser) versión 5.1.3 y recientemente cambié a speedparser (0.1.8) por razones de rendimiento. Tiene casi las mismas interfaces, pero funciona más rápido.

Lo estoy usando para una aplicación de Python-for-Android aficionada y el corrector de velocidad corre aproximadamente 5 veces más rápido en mis feeds.


Si quieres una alternativa, prueba xml.dom.minidom. Como "Django es Python", "RSS es XML".


Usar feedparser es una opción mucho mejor que rodar la tuya con minidom o BeautifulSoup.

  • Normaliza las diferencias entre todas las versiones de RSS y Atom, por lo que no es necesario tener un código diferente para cada tipo.
  • Es bueno para detectar diferentes formatos de fecha y otras variaciones en los feeds.
  • Sigue automáticamente las redirecciones HTTP.
  • Sanitiza el contenido HTML.
  • Tiene soporte para cabeceras ETag y Last-Modified para que pueda ver si el feed ha cambiado simplemente descargando el encabezado HTTP y no todo el feed.
  • Tiene soporte para feeds autenticados.
  • Tiene soporte para proxies HTTP.

Como otros han mencionado, solo pruébalo. Es como 2 líneas de código para analizar un feed. Mi única queja es que solo usa diccionarios como su modelo de datos y algunos atributos pueden faltar en el diccionario si no están en el feed, por lo que debe verificarlo en su código. Pero la documentación es muy clara sobre qué atributos estarán siempre en el diccionario y cuáles pueden faltar.

Finalmente, puedo responder por ello, ya que he escrito una aplicación que lo usa. Vea aquí: http://www.feednotifier.com/



Feedparser es muy potente, configurable y muy fácil de usar. Una curva de aprendizaje muy amigable, en todo caso.

Ejemplo

Determine de forma programática cuántas respuestas tiene su pregunta:

easy_install feedparser python -c ''import feedparser; print len(feedparser.parse("http://bit.ly/c785aj")["entries"])''