Pregunta

Busco una buena biblioteca en Python que me ayudará a analizo los canales RSS. Alguien ha utilizado feedparser? Cualquier comentario?

¿Fue útil?

Solución

feedparser es una opción mucho mejor que rodar con su propio minidom o BeautifulSoup.

  • Se normaliza las diferencias entre todas las versiones de RSS y Atom por lo que no tiene que tener código diferente para cada tipo.
  • Es bien acerca de la detección de diferentes formatos de fecha y otras variaciones en los alimentos.
  • Se deduce automáticamente redirecciones HTTP.
  • Se desinfecta el contenido HTML.
  • Tiene soporte para ETag y la cabecera Last-Modified para que pueda ver si el alimento ha cambiado simplemente mediante la descarga de la cabecera HTTP y no toda la alimentación.
  • Tiene soporte para fuentes autenticadas.
  • Tiene soporte para servidores proxy HTTP.

Al igual que otros han mencionado, a modo de prueba. Es como 2 líneas de código para analizar un canal. Mi única queja es que sólo utiliza los diccionarios como su modelo de datos y algunos atributos puede ser que falta en el diccionario si no estaban en la alimentación, así que hay que comprobar que en el código. Pero la documentación es muy clara en que atribuye siempre estará en el diccionario, y que pudieran faltar.

Por último, puedo dar fe de ello, como he escrito una aplicación que lo utiliza. Ver aquí: http://www.feednotifier.com/

Otros consejos

feedparser es muy potente, configurable y tan fácil de usar. Una curva de aprendizaje muy amable, en todo caso.

Ejemplo

Programatically determinar el número de respuestas a su pregunta tiene:

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

Si quieres una alternativa, intente xml.dom.minidom. Al igual que "Django es Python", "RSS es XML".

Sé que esto es un tema muy antiguo, pero para lo que vale la pena, yo estaba usando feedparser (analizador de alimentación universal) versión 5.1.3 y recientemente swiched a speedparser (0.1.8) por razones de rendimiento. Tiene más o menos las mismas interfaces, pero correr más rápido.

Lo estoy usando para un aficionado aplicación y speedparser Python-para-Android corre alrededor de 5 veces más rápido en mis feeds.

http://www.feedparser.org/

En primer golpe en G.

En respuesta a su seguimiento. Usted podría utilizar BeautifulSoup - pero feedparser es mucho mejor al RSS entrega.

No Snark - pero ¿ha leído feedparsers documentación ? No sé cómo podría ser más fácil de usar.

A partir de 2019, atoma es una alternativa posible feedparser , aunque yo no lo he utilizado.

Yo recomiendo encarecidamente feedparser.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top