使用Wikipedia API进行自动完成搜索

时间:2015-02-10 13:32:31

标签: javascript jsonp cors wikipedia-api mediawiki-api

我想使用Wikipedia API从我的Javascript应用程序中的 People 类别中选择一个名人的名字。基本上,我想发送名称或部分名称,并获得包含维基百科URL,标题,内容摘录以及主要图片的结果。

我一直在尝试两种方式,但我无法按照自己的意愿使用。

首先我尝试了search,但我找不到让它返回网址的方法。 sectiontitle会作为唯一标识符好吗? snippet能以某种方式成为纯文本吗?找不到如何按类别过滤。

其次,我尝试使用opensearch,但JSON响应不包含图像,而XML响应则包含:

JSON:http://en.wikipedia.org/w/api.php?action=opensearch&search=mariano&namespace=0&format=json

XML:http://en.wikipedia.org/w/api.php?action=opensearch&search=mariano&namespace=0&format=xml

无法按类别进行过滤。此外,一些结果包括指向消歧页面的链接,当我希望得到可能的匹配列表而不是这样的链接时。

我如何按标题搜索并获得完整的标题,网址,小描述和图片链接?

1 个答案:

答案 0 :(得分:2)

Opensearch用于输入字段自动完成;它基于external spec并且不够灵活。您应该将搜索API用作其他API的generator,例如可以返回更多详细信息的信息(example)。