我正在寻找一种使用python通过Wikipedia API或任何其他模块来获取输入世界范围的方法。
例如:
[这个问题是asked,answered,并且尽管在将近十年前就结束了,但范围仍然太广。我相信答案的重点仍然存在,但是:
分类始终是高度主观的
由于已经很长时间了,所以我在线上尝试了各种API产品,似乎它们都有长处和短处。
Wikipedia API对我来说并没有产生很好的结果,甚至搜索/抓取页面也很困难,因为-例如,搜索“ bike”会将您直接带到自行车页面。但是,搜索“纽约”会将您带到歧义页面。我认为您不能指望总是将“最可取的”选择放在列表顶部。例如,搜索python
将返回一个歧义页面,其中所需的编程语言类别在列表中排在第9位。此外,当您获得JSON结果时,它们不会被细分,因此您可以轻松地选择“是”或“指代”,除非您在一些摘要中搜索(例如)一些关键短语。
我测试过的几个词分类API中,WordsAPI看起来很有希望。通过使用您提供的示例查看响应的Is an Instance Of
和Is a Type Of
部分,可以得到不错的结果。但是,它仅以英语提供(不确定是否有问题)。
Wikidata.org也产生了一些不错的结果,并允许您按“相关性”排序,这有助于将最可能的答案保持在顶部。 Here's a search代表python
,实际上会产生一个列表,其中编程语言位于顶部。
如果这是我的项目,我可能会从Wikidata和带有要测试类别的大单词列表开始。然后使用解析逻辑来捕获尽可能多的变体,最终您可能最终将依赖自然语言。
为了记录,没有我在Wikipedia / Wikidata外部测试过的API之一,返回了与Python
有关的任何计算机相关信息。