RSSフィードの解析に役立つPythonの優れたライブラリを探しています。誰かがfeedparserを使用しましたか?フィードバックはありますか?
8 に答える
feedparserを使用することは、minidomまたはBeautifulSoupを使用して独自にロールするよりもはるかに優れたオプションです。
- RSSとAtomのすべてのバージョンの違いを正規化するため、タイプごとに異なるコードを用意する必要はありません。
- フィードのさまざまな日付形式やその他のバリエーションを検出するのは良いことです。
- HTTPリダイレクトに従います。
- HTMLコンテンツをサニタイズします。
- ETagヘッダーとLast-Modifiedヘッダーをサポートしているため、フィード全体ではなくHTTPヘッダーをダウンロードするだけでフィードが変更されたかどうかを確認できます。
- 認証されたフィードをサポートしています。
- HTTPプロキシをサポートしています。
他の人が言ったように、それを試してみてください。フィードを解析するのは2行のコードのようなものです。私の唯一の不満は、データモデルとして辞書を使用しているだけであり、フィードに含まれていない場合は一部の属性が辞書から欠落している可能性があるため、コードでそれを確認する必要があります。しかし、どの属性が常に辞書にあり、どの属性が欠落している可能性があるかについてのドキュメントは非常に明確です。
最後に、それを使用するアプリケーションを作成したので、それを保証することができます。ここを参照してください:http://www.feednotifier.com/
Feedparserは非常に強力で、構成可能で、非常に使いやすいです。非常に友好的な学習曲線です。
例
質問の回答数をプログラムで決定します。
easy_install feedparser
python -c 'import feedparser; print len(feedparser.parse("http://bit.ly/c785aj")["entries"])'
別の方法が必要な場合は、xml.dom.minidom を試してください。「Django は Python」、「RSS は XML」のように。
Gの最初のヒット。
あなたのフォローアップに答えて。BeautifulSoup を使用することもできますが、feedparser は RSS 処理に適しています。
スナークするつもりはありませんが、feedparsers のドキュメントは読みましたか? どうすれば使いやすくなるかわかりません。
フィードパーサーを強くお勧めします。