如何使用wikimedia commons API下载图像

问题描述 投票:0回答:1

我正在尝试完成一个应用程序,我需要使用他们的 API 从 Wikimedia Commons 下载图像,类似于使用在线搜索 https://commons.wikimedia.org/。使用他们的在线搜索“橙色”会显示大量橙色图像,这正是我想要的,使用他们的 API 不会返回“橙色”的图像。

使用 API 进行的一些搜索会得到我想要的结果(例如苹果、牛排、牛奶、梨、南瓜、西兰花)。其他结果不会返回任何图像(例如橙子、土豆、胡萝卜),而他们的在线搜索对于所有这些搜索都适用。

我使用他们的 API 发出的请求示例如下:

“苹果”工作正常:

https://commons.wikimedia.org/w/api.php?action=query&format=json&generator=images&prop=imageinfo&iiprop=url&titles=apple&gimlimit=48

请求正文的结果 =

{"batchcomplete":"","continue":{"gimcontinue":"54098|Cider_and_apple_juice.jpg","continue":"gimcontinue||"},"query":{"pages":{"44430987":{"pageid":44430987,"ns":6,"title":"File:(A bunch of Royal Gala Apples from Chile).JPG","imagerepository":"local","imageinfo":[{"url":"https://upload.wikimedia.org/wikipedia/commons/e/eb/%28A_bunch_of_Royal_Gala_Apples_from_Chile%29.JPG","descriptionurl":"https://commons.wikimedia.org/wiki/File:(A_bunch_of_Royal_Gala_Apples_from_Chile).JPG","descriptionshorturl":"https://commons.wikimedia.org/w/index.php?curid=44430987"}]},"37689295":{"pageid":37689295,"ns":6,"title":"File:2015 01 Appelpannenkoek.jpg"
, ...... 等等

“orange”不返回图像,但在他们的网站上运行良好。

https://commons.wikimedia.org/w/api.php?action=query&format=json&generator=images&prop=imageinfo&iiprop=url&titles=orange&gimlimit=48

请求正文的结果 =

{"batchcomplete":""}

我可以做什么来解决这个问题?

http download wikimedia-commons
1个回答
0
投票

使用

https://commons.wikimedia.org/w/api.php?action=query&format=json&generator=images&prop=imageinfo&iiprop=url&titles=apple&gimlimit=48

您要求提供页面中包含的所有图像https://commons.wikimedia.org/wiki/apple

无法对橙子执行此操作,因为页面 https://commons.wikimedia.org/wiki/orange 不存在。

如果你想模拟维基共享资源搜索,你可以使用:

https://commons.wikimedia.org/w/api.php?action=query&generator=search&gsrsearch=orange&gsrnamespace=6&format=json
© www.soinside.com 2019 - 2024. All rights reserved.