2012-05-13 9 views
1

私はPythonでウィキペディアのページを解析しようとしてきており、APIを使ってかなり成功しています。Pythonでウィキペディアのページを解析するには?

しかし、何らかの形でAPIドキュメントは、すべてのデータを取得するのに骨格すぎるようです。 今のところ、私は、

http://en.wikipedia.org/w/api.php?action=query&prop=extracts&titles=China&format=json&exintro=1 

だけにrequests.get()の呼び出しをやっている、これは私だけ最初の段落を返します。ページ全体ではありません。私はallpagesと検索を使用しようとしましたが、無駄にしました。 wikiページからデータを取得する方法のより良い説明は本当の助けになるでしょう。以前のクエリによって返された紹介だけでなく、すべてのデータ。

答えて

3

クエリアクションを使用してページのコンテンツを取得しているようです。それはAPIの仕様によると、それはデータの一部だけを返します。適切なアクションはクエリのようです。ここで

はサンプルです

import urllib2 
req = urllib2.urlopen("http://en.wikipedia.org/w/api.php?action=parse&page=China&format=json&prop=text") 
content = req.read() 
# content in json - use json or simplejson to get relevant sections. 
APIを使用するよりも多くの時間がかかる
+0

私はスペルミスを覚えました。私の編集で固定された 'urlib'ではなく' urllib'です。 –

+0

ありがとう@JakobBowyerそれを実現しませんでした。 –

1

Beautiful Soupを使用してページからコンテンツを抽出したことがありますか?

私はこれをウィキペディアに使用していませんが、他の人はこれを使用していますが、他のページを掻き集めるために使用しています。

+2

をこするないでしょうか? – Hick