разбор Викимедиа API - PullRequest
       7

разбор Викимедиа API

2 голосов
/ 05 ноября 2011

Мне нужна твоя помощь.Я разбираю статью в Википедии и использую API Викимедиа.Я хочу прочитать текст между {{ }}.Вот мой запрос API Викимедиа .Я пытался, но не нашел удачи.Кто-нибудь может мне помочь, пожалуйста ?Большое спасибо.

def getCategory(title):
paramsd = {'action': 'query', 'prop': 'revisions', 'rvprop': 'content', 'format': 'xmlfm', 'rvsection': 0,'titles':title}
params = urllib.urlencode(paramsd)
req = urllib2.Request(url='http://en.wikipedia.org/w/api.php', data=params)
f = urllib2.urlopen(req)

Ответы [ 2 ]

4 голосов
/ 05 ноября 2011

Знаете, есть несколько библиотек, уже написанных для этой конкретной цели, в python есть pywikipedia, и их больше для каждого языка. Есть список http://www.mediawiki.org/wiki/API:Client_code#API_Access_Libraries, в котором перечислены четыре библиотеки для python. Я бы использовал один из них вместо того, чтобы катать свой собственный.

0 голосов
/ 23 апреля 2012

В вашем коде есть ошибка.

'format': 'xmlfm'

Должен читать

'format': 'xml'

Таким образом, вы получите обратно XML.

...