prop = extract不返回WikiMedia API中的所有提取

时间:2012-03-23 21:38:43

标签: wikipedia mediawiki-api

我想使用wikipedia API一次性从多个维基百科文章中提取。我正在尝试,例如,以下请求(我只是随机选择了pageids):

http://en.wikipedia.org/w/api.php?format=xml&action=query&pageids=3258248|11524059&prop=extracts&exsentences=1

但它只包含第一个pageid的摘录,而不是第二个。其他属性似乎没有这个限制。例如

http://en.wikipedia.org/w/api.php?format=xml&action=query&pageids=3258248|11524059&prop=categories

将返回两个pageid的类别。这是一个错误,还是我错过了什么?

1 个答案:

答案 0 :(得分:10)

注意<query-continue>元素。它告诉您,要获得更多提取,您需要指定excontinue=1

http://en.wikipedia.org/w/api.php?format=xml&action=query&pageids=3258248|11524059&prop=extracts&exsentences=1&excontinue=1

通过指定exlimit=max

,您应该能够同时获得这两者

http://en.wikipedia.org/w/api.php?format=xml&action=query&pageids=3258248|11524059&prop=extracts&exsentences=1&exlimit=max

但这似乎没有正常工作,我不知道为什么。

BTW,类别有类似的限制,这就是为什么您的类别查询也有<query-continue>,以及为什么它没有列出文章的所有类别。