10

我正在尝试从 Wikimedia Commons 查询所有猫的图像(例如)。

我想到的方法是首先搜索此处的 Cat 页面(我不知道如何以编程方式找到它,也许重定向?):

https://commons.wikimedia.org/wiki/Felis_silvestris_catus

因此,要获得图像,我只需要这样做:

https://commons.wikimedia.org/w/api.php?action=query&prop=images&imlimit=500&titles=Felis_silvestris_catus

这将返回我想要的。然而,即使 Cat 重定向到 Felis_silvestris_catus,对 Cat 的相同搜索也不会返回任何内容。

有谁知道是否有任何简单的方法可以在 Wikimedia Commons 上进行图像搜索,只是从“Cat”开始,它会返回 Cat 图像,如果没有什么是最好的?

我已经看了几个小时的 API,但我似乎无法弄清楚。

4

2 回答 2

10

只需添加redirects=1到您的请求。

https://commons.wikimedia.org/w/api.php?action=query&prop=images&imlimit=500&redirects=1&titles=Cat

更新:要获取每个返回图像的图像信息,请使用generator=images和查询prop=imageinfo

https://commons.wikimedia.org/w/api.php?action=query&generator=images&prop=imageinfo&gimlimit=500&redirects=1&titles=Cat&iiprop=timestamp|user|userid|comment|canonicaltitle|url|size|dimensions|sha1|mime|thumbmime|mediatype|bitdepth

其中iiprop包括一些 imageinfo 属性(检查所有这些属性的 API 文档)

于 2016-05-02T06:39:00.743 回答
0

这里有一个用于 WikiCommons 的 jQuery API 和 GUI: https ://github.com/genolve/wikimedia-api-gui 如果您不需要 GUI 部分,直接调用底层函数很容易。尝试

getThumbsForPage() - Get the thumbnail (and full image URL) for ARRAY of PAGES
//then in the callback tap into 
infoA[ii].thumburl  
infoA[ii].url
于 2019-09-23T21:00:13.893 回答