41 votes

Bibliothèque d'analyseurs de flux RSS en Python

Je cherche une bonne bibliothèque en python qui m'aidera à analyser les flux RSS. Quelqu'un at-il utilisé feedparser? Tous les commentaires?

58voto

FogleBird Points 23405

À l'aide de feedparser est une bien meilleure option que de rouler votre propre avec minidom ou BeautifulSoup.

  • Il normalise les différences entre toutes les versions de RSS et Atom de sorte que vous n'avez pas à avoir un code différent pour chaque type.
  • Il est bon au sujet de la détection de différents formats de date et d'autres variations dans les aliments.
  • Il s'ensuit automatiquement les redirections HTTP.
  • Il assainit contenu HTML.
  • Il a un support pour ETag et de Dernière modification des en-têtes de sorte que vous pouvez voir si l'alimentation a changé juste en téléchargeant l'en-tête HTTP et non pas la totalité d'alimentation.
  • Il a un support pour les flux authentifiés.
  • Il a un support pour les serveurs proxy HTTP.

Comme d'autres l'ont mentionné, il suffit de l'essayer. C'est comme les 2 lignes de code pour parser un flux. Mon seul reproche est qu'il utilise juste les dictionnaires comme son modèle de données et certains attributs peuvent être manquantes dans le dictionnaire si ils n'étaient pas dans le nourrir, de sorte que vous avez à vérifier que dans votre code. Mais la documentation est très claire sur les attributs seront toujours dans le dictionnaire et qui est peut-être manquant.

Enfin, je peux témoigner de cela, comme je l'ai écrit une application qui l'utilise. Voir ici: http://www.feednotifier.com/

11voto

flybywire Points 36050

Feedparser est très puissant, configurable et très facile à utiliser. Une courbe d'apprentissage très conviviale, voire pas du tout.

Exemple

Déterminez par programme combien de réponses à votre question:

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

2voto

Andre Miras Points 721

Je sais que c'est un très vieux sujet, mais pour ce que ça vaut, j'ai été en utilisant feedparser (Universel d'alimentation de l'analyseur) version 5.1.3 et j'ai récemment swiched à speedparser (0.1.8) pour des raisons de performances. Il a à peu près les mêmes interfaces, mais de courir plus vite.

Je l'utilise pour un amateur Python-pour-Android application et speedparser fonctionne environ 5 fois plus vite sur mon flux rss.

1voto

piotr Points 2826

http://www.feedparser.org/

Premier coup sur G.

1voto

ZenGyro Points 101

En réponse à votre suivi. Vous pouvez utiliser BeautifulSoup - mais feedparser est bien mieux adapté à la gestion des flux RSS.

Ne pas snark - mais avez-vous lu la documentation de feedparsers? Je ne sais pas comment cela pourrait être plus simple à utiliser.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X