这是我在社区的第一篇文章,不是母语为英语的人,所以请原谅我的英语不好以及在发布本文时可能会犯的任何错误。
我正在创建一个应用程序(NodeJS),该应用程序将在Wikipedia上搜索行星名称,并以JSON格式返回第一个结果描述和图像。
我的要求是:
必须采用JSON格式;
必须仅通过一次Api呼叫来完成;
当然,我在发布之前先搜索了Google和Stackoverflow的解决方案。
遵循Wikipedia API DOC(https://www.mediawiki.org/wiki/API:Opensearch)&&(https://www.mediawiki.org/wiki/API:Main_page)
我尝试了以下查询:
https://en.wikipedia.org/w/api.php?action=opensearch&search=planet%20mars&limit=1&namespace=0&format=json
这只会给我标题和文章链接
如果我尝试相同的查询但格式为xml:
https://en.wikipedia.org/w/api.php?action=opensearch&search=planet%20mars&limit=1&namespace=0&format=xml
如您所见,将格式更改为xml,它可以工作,我可以得到图像标签!但是我的应用程序不接受xml格式(出于安全原因)!
如何在JSON FORMAT中获得相同的结果?
还有其他方法可以成功地从Wikipedia提取搜索结果的描述和图像吗?
答案 0 :(得分:0)
我找到了解决方案,所以我将回答我自己的问题,也许有一天可能对某人有所帮助 我必须使用的api调用是:https://en.wikipedia.org/w/api.php?format=json&action=query&prop=extracts|pageimages&exintro&explaintext&generator=search&gsrsearch=intitle:planet%20mars&gsrlimit=1&redirects=1