维基百科应该说是人类知识的宝库,各种语言的词条都是成千上万人参与编辑的结果,而且也都是免费提供给全世界查看。我们的一些网站以前加上了维基百科的词条了解,但还没有嵌入过其内容,这次想到用Wikipedia的API来获取摘要信息,直接放在网站中供人观看。
Wikipedia是用MediaWiki软件搭建的,这里有API的介绍:API:Main page - MediaWiki(也有API中文介绍,但其中很多内容没有翻译,最好还是直接看英文的)。
我们目前全都是查询信息,也就是Query动作,主要用到三个接口:
- 重定向页面获取:使用query动作,带redirects参数,
例如:🧧这个Emoji指向的重定向页面:https://en.wikipedia.org/w/api.php?action=query&titles=%F0%9F%A7%A7&redirects - 摘要信息获取:使用query动作,带有prop=extracts等参数,
例如:https://en.wikipedia.org/w/api.php?action=query&prop=extracts&explaintext&exintro&exsectionformat=plain&titles=Red+envelope - 多语言链接获取:使用query动作,带有prop=langlinks等参数,
例如:https://en.wikipedia.org/w/api.php?action=query&prop=langlinks&lllimit=max&titles=Red%20envelope
获取的信息可以入库,也可以保存为json文件,供我们在网站中调用。
如果是英文以外的其它语言,只要把https://en.wikipedia.org/w/api.php?中的en替换为其它语言代码就可以,例如调用中文维基百科API内容就是https://zh.wikipedia.org/w/api.php?加上参数就可以。
另外,放在国内的服务器是无法连接wikipedia.org域名的,所以也无法获取API内容,需要用放在国外的服务器才能获取维基百科API的内容。
评论