Wikipedia API 批处理 pageImages 只返回第一张图片
Wikipedia API Batch pageImages returning only first image
我正在尝试对维基百科的查询 API 进行批量调用以检索 pageImages
(主图像)和 extract
。出于某种原因,我的 API 只为第一个结果调用 returns 图像,而不是第二个结果:
https://en.wikipedia.org/w/api.php?format=json&action=query&prop=pageimages|extracts&exintro=&explaintext=&titles=Stack%20Overflow%7CMicrosoft&exlimit=2&pithumbsize=500&pilimit=2
这也发生在数据提取中,但通过添加 exlimit
参数解决了。据我了解,对于 pageimages
,等效参数是 pilimit
。不幸的是,这并不能解决问题。
如何将上面的 API 调用更改为 return 维基百科结果的批量集合,每个结果都有一个 extract
和 pageImages
?
首先,pageimages
可能存在错误,因此您可以改用 images
。第二,第二个标题的图像只有在第一个标题的所有图像都显示后才会显示。等等,所以你需要使用 imlimit=max
:
https://en.wikipedia.org/w/api.php?action=query&prop=images|extracts&exintro=&explaintext=&titles=Stack%20Overflow|Microsoft&exlimit=2&imlimit=max
如果您还想获得非免费图像 (example, sandbox),请添加 pilicense=any
。由于对如何使用它们的各种限制,这些往往不是那么好(例如较低的分辨率)。
我正在尝试对维基百科的查询 API 进行批量调用以检索 pageImages
(主图像)和 extract
。出于某种原因,我的 API 只为第一个结果调用 returns 图像,而不是第二个结果:
https://en.wikipedia.org/w/api.php?format=json&action=query&prop=pageimages|extracts&exintro=&explaintext=&titles=Stack%20Overflow%7CMicrosoft&exlimit=2&pithumbsize=500&pilimit=2
这也发生在数据提取中,但通过添加 exlimit
参数解决了。据我了解,对于 pageimages
,等效参数是 pilimit
。不幸的是,这并不能解决问题。
如何将上面的 API 调用更改为 return 维基百科结果的批量集合,每个结果都有一个 extract
和 pageImages
?
首先,pageimages
可能存在错误,因此您可以改用 images
。第二,第二个标题的图像只有在第一个标题的所有图像都显示后才会显示。等等,所以你需要使用 imlimit=max
:
https://en.wikipedia.org/w/api.php?action=query&prop=images|extracts&exintro=&explaintext=&titles=Stack%20Overflow|Microsoft&exlimit=2&imlimit=max
如果您还想获得非免费图像 (example, sandbox),请添加 pilicense=any
。由于对如何使用它们的各种限制,这些往往不是那么好(例如较低的分辨率)。