获取任意语言中一个词的所有维基百科意思

0 投票
1 回答
800 浏览
提问于 2025-04-17 18:50

我想要获取一个词在维基百科上的所有意思。例如,对于“bar”这个词,它的不同意思可以在这个链接找到:http://en.wikipedia.org/wiki/Bar_(disambiguation)

  • 酒吧
  • 甜点吧
  • 潜水酒吧
  • ...

有没有办法通过维基百科的API获取不同语言的词的不同意思呢?

对于英语,我觉得这些链接大多是按照上面的格式(标题中包含“disambiguation”)来写的。但对于西班牙语或其他语言,意思解释页面的链接就不一样了。

我尝试查看分类页面,这里列出了所有的意思解释页面(例如:http://en.wikipedia.org/w/index.php?title=Category:All_article_disambiguation_pages&pagefrom=a),但它并没有直接列出所有词的不同意思。

1 个回答

1

现在大多数(几乎所有)维基百科的版本都安装了一个叫做消歧义器的扩展,这意味着你可以通过API访问所有的消歧义页面:

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

不过,在像维基百科这样的WMF维基上,通过这种方式获取的结果数量是有限制的,所以如果你需要获取所有的结果,就得下载一个数据库备份,然后在这个备份上进行查询(在这种情况下,你可以了解一下page_props表,并对其进行SQL查询)。

第二种方法是使用WikiData,查询所有作为实例(P31)维基媒体消歧义页面(Q4167410)

撰写回答