4

Pythonでユニバーサルフィードパーサーを使用して、Googleニュースからニュースのコーパスをダウンロードしようとしています(自然言語処理を行うため)。私は実際には XML について何も知りません。フィードパーサーの使用方法の例を使用しているだけです。問題は、RSS フィードから取得した dict でニュースの内容がタイトルだけで見つからないことです。

私が現在使用しようとしているコードは次のとおりです。

import feedparser
url = 'http://news.google.com.br/news?pz=1&cf=all&ned=us&hl=en&output=rss' 
# just some GNews feed - I'll use a specific search later

feed = feedparser.parse(url)
for post in feed.entries:
   print post.title
   print post.keys()

この投稿で得られるキーは、タイトル、概要、日付などだけです。コンテンツはありません。

これは Google ニュースの問題ですか、それとも何か問題がありますか? それを行う方法はありますか?

4

2 に答える 2

8

Google ニュースのフィードを調べましたか。

各フィードには、一連の情報と実際のエントリ dict を含むルート要素があります。利用可能なものを確認する汚い方法は次のとおりです。

import feedparser
d = feedparser.parse('http://news.google.com/news?pz=1&cf=all&ned=ca&hl=en&topic=w&output=rss')

print [field for field in d]

見る限り、entriesフィールドには .. ニュース エントリが含まれている可能性が高いです。もし、あんたが:

import pprint
pprint.pprint(entry for entry in d['entries'])

さらに情報を取得します:)これにより、各エントリに関連するすべてのフィールドがきれいに印刷された方法で表示されます(これがpprintの目的です)

したがって、このフィードからニュース エントリのすべてのタイトルを取得するには、次のようにします。

titles = [entry.title for entry in d['entries']

それで、それで遊んでください。うまくいけば、それは役に立つスタートです

于 2009-11-04T02:50:01.753 に答える
1

まず、 RSS 仕様を確認する必要があります。そして、これがフィード パーサーです。これで始められるはずです。

于 2009-11-04T02:46:31.043 に答える