2013-03-12 47 views
0

我希望得到一个词的所有维基百科含义的列表。例如,对于单词 '酒吧',在disambiguations在http://en.wikipedia.org/wiki/Bar_(disambiguation)上市:获取任何语言的所有维基词典的意义

  • 酒吧(建立)
  • 甜品吧
  • 潜水吧
  • ...

是有什么方法可以从Wikipedia API的不同语言中获取单词的消歧?

对于英语,我认为这些网址大部分都是按照上述格式(在标题中加上消歧)。但对于西班牙语或其他语言,消歧页面的网址是不同的。

我试过查看列出所有消歧页面的类别页面(例如http://en.wikipedia.org/w/index.php?title=Category:All_article_disambiguation_pages&pagefrom=a),但它并未直接列出所有术语的消歧。

+0

你是什么意思?该类别没有列出哪些消歧? – svick 2013-03-13 00:21:20

+0

我想要一个编程方式来获取消除歧义的列表,您可以在http://en.wikipedia.org/w/index.php?title=Category:All_article_disambiguation_pages&pagefrom=a中点击链接后看到消歧。在西班牙语中,相应的页面是:http://es.wikipedia.org/w/index.php?title=Categor%C3%ADa:Wikipedia:Desambiguaci%C3%B3n&pagefrom=mactas。 – user875700 2013-03-16 07:07:53

回答

0

大多数(所有?)维基百科版本现在有disambiguator扩展安装,这意味着你可以从API访问所有歧义页:

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

然而有上WMF限制维基百科关于您可以以这种方式检索的结果数量,因此如果您需要全部检索结果,则必须下载数据库转储并重新进行查询(在这种情况下,您可以在page_props table上读取一些信息,并且对此做一个SQL查询)。

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

相关问题