Je cherche une bonne bibliothèque en python qui m'aidera à analyser les flux RSS. Quelqu'un at-il utilisé feedparser? Tous les commentaires?
Réponses
Trop de publicités?À 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/
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"])'
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.
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.