2011-10-30 7 views
2

私はフィードからいくつかの特定の情報を取得するためにfeedparserを使用しようとしていますが、各エントリーの生のXML(すなわちRSSとAtomの要素)それを行う方法を参照してください。明らかにXMLを手で解析することはできますが、これはあまりエレガントではなく、RSSとAtomを別々にサポートする必要があり、不正なフィードのフィードパーザと同期が外れる可能性があると思います。より良い方法がありますか?フィードパーサーを使って項目の生XMLを取得

ありがとうございます!

答えて

2

私はfeedparserの現在の開発者です。現在、その情報を得る方法の1つは、​​のMonkeypatch(または、feedparser.pyのローカルコピーを編集する)です。あなたが変更したいと思うの方法があります。各メソッドの上部に

  • feedparser._FeedParserMixin.unknown_starttag
  • feedparser._FeedParserMixin.unknown_endtag

あなたが要素とをキャプチャしますあなた自身のルーチンにコールバックを挿入することができますフィードパーサーが遭遇したその属性

+1

ありがとうございました!それは便利なことですが、私が意図したことは、各アイテムの完全なXML(既知のアイテムを含む)を格納し、集約されたフィード(たとえば)に戻す方法として取得することでした。 [実際には、項目はさまざまな形式(RSS、Atomなど)になる可能性があるため、これはあまり便利ではないことがわかっています。たぶんfeedparserが構文解析できるさまざまな形式の項目のXMLを生成する方法を持つためにfeedparserに便利な機能を追加することもできます...] – a3nm

関連する問題