【发布时间】:2018-01-24 10:17:47
【问题描述】:
我正在尝试为 FreeCodeCamp 上的一个项目使用 mediawiki API。我已经阅读了 API 文档中的这些页面:
目前还不清楚真正的区别是什么,以及何时以及为什么需要使用每一个。这是我进行的三个 API 调用,每个调用产生的结果略有不同:
en.wikipedia.org/w/api.php?action=opensearch&search=Albert
在此,我得到一个包含 4 个项目的数组,第一个是搜索词,第二个是结果页面标题列表,第三个是每个页面的小 sn-p,第四个是 URL每一页。
en.wikipedia.org/w/api.php?action=query&generator=search&gsrsearch=Albert&format=json
在这个,有一个generator=search,我不明白。在生成器的 API 页面上,它只是说:Get the list of pages to work on by executing the specified query module.,这并不是很有帮助。这是什么意思?
en.wikipedia.org/w/api.php?action=query&list=search&srsearch=Albert&format=json
这与上一个相同,只是我使用的是list=search。
所以我的问题是:
在第一次和第二次调用之间,我使用的是
action=opensearch和action=query:真正的区别是什么?list和generator有什么区别?最后,为什么在使用
generator=search时,gsrprop=snippet不显示任何sn-ps:API Sandbox for this,为什么inprop=url在使用list=search时不起作用: API Sandbox for this
如您所见,两者几乎相同,除了一个使用生成器,另一个使用列表,但都提到 inprop=url 和 sn-ps (srprop & gsrprop)。
【问题讨论】:
标签: php json mediawiki wikipedia-api mediawiki-api