以任何语言获取所有维基百科单词的含义

时间:2013-03-12 17:46:51

标签: python api wikipedia disambiguation

我想获得一个单词的所有维基百科含义的列表。例如,对于单词“bar”,消除歧义列在http://en.wikipedia.org/wiki/Bar_(disambiguation)

  • 酒吧(营业所)
  • 甜品吧
  • 潜水吧
  • ...

有没有办法从维基百科API访问不同语言的单词歧义?

对于英语,我认为网址的格式大多与上面一样(标题中有歧义)。但对于西班牙语或其他语言,消歧页面的网址是不同的。

我已经尝试查看列出所有消除歧义页面的类别页面(例如http://en.wikipedia.org/w/index.php?title=Category:All_article_disambiguation_pages&pagefrom=a),但它没有直接列出所有歧义的消息。

1 个答案:

答案 0 :(得分:0)

大多数(所有?)Wikipedia版本现在都安装了disambiguator扩展名,这意味着您可以从API访问所有消除歧义的页面:

api.php?action=query&list=querypage&qppage=DisambiguationPages

但是像维基百科这样的WMF wiki有一个限制,你可以通过这种方式检索结果的数量,所以如果你需要它们,你必须下载一个数据库转储并再次进行查询(在这种情况下,你可以在page_props table上读取一些内容,并对其进行SQL查询。

第二种方法是使用WikiData,并查询instance of (P31) Wikimedia disambiguation page (Q4167410)的所有网页。