Wikibook API查询

我试图了解如何构建API调用,在这里我可以获取此处提到的配方,配料和过程的数据(json格式)。有人可以帮助我解决这个问题吗?

https://en.wikibooks.org/wiki/Cookbook:Recipes

此URL具有配方名称,当单击每个项目时,它会获得配料和过程。

jyw114 回答:Wikibook API查询

要获取所有食谱,我将不使用Cookbook:Recipes,而是更完整的Category:Recipes

用于列出Category:Recipes中列出的所有配方的API调用如下: https://en.wikibooks.org/w/api.php?action=query&generator=categorymembers&gcmtitle=Category:Recipes&gcmlimit=max&format=json&gcmcontinue=。 它会返回500个食谱,但Wikibooks上还有更多食谱。要获取其余值,请在响应中使用continue -> gcmcontinue值,并将其附加到下一个API调用。

要获取配方的成分和步骤,请致电例如 https://en.wikibooks.org/w/api.php?action=query&prop=revisions&format=json&rvprop=content&rvslots=%2A&rvsection=1&titles=Cookbook:Biscuits。 您可以使用|字符通过相同的API调用来检索多个配方: https://en.wikibooks.org/w/api.php?action=query&prop=revisions&format=json&rvprop=content&rvslots=%2A&titles=Cookbook:Biscuits|Cookbook:Baklava

如果只想检索配料或配方过程,请使用附加参数rvsection=。大部分时间(但并非总是如此),配料在第一部分中,过程在第二部分中。所以打电话

,

我不确定这是否是您的问题,但是除了Pascalco的回答,值得注意的是,您将无法获得结构化的json数据,该数据详细说明成分的数量和程序,例如:>

{ "ingredient": "milk","quantity": { "number": "1","unit":"liter"}}

API将把原始mediawiki的语法页面内容放在一个字段中,并添加有关页面的一些其他元数据。

此外,这些页面不使用模板的事实使得使用语法解析器或html解析器很难提取此类数据。

本文链接:https://www.f2er.com/2604185.html

大家都在问