使用Wikipedia API获取图像URL,但有些图像不返回URL,为什么?

时间:2013-03-09 05:32:51

标签: api jsonp mediawiki wikipedia

例如,转到http://en.wikipedia.org/w/api.php?action=query&titles=Image:Nordendorf-brooch.jpg&prop=imageinfo&iiprop=url&meta=siteinfo&siprop=rightsinfo&format=json&callback=?会给我一个JSON对象,其中包含一个url键(在“imageinfo”中),其值为http://upload.wikimedia.org//wikipedia//commons//c//cc//Nordendorf-brooch.jpg

但有些图片不会返回网址,例如Image:Wodan_Heilt_Balders_Pferd_by_Emil_Doepler.jpg。因此,如果我转到http://en.wikipedia.org/w/api.php?action=query&titles=Image:Wodan_Heilt_Balders_Pferd_by_Emil_Doepler.jpg&prop=imageinfo&iiprop=url&meta=siteinfo&siprop=rightsinfo&format=json&callback=? imageinfo并且其url键未包含在json对象中。

除了imageinfo之外,我注意到的一件事就是看起来像返回网址的图片在“imagerepository”密钥中的值为“shared”,而那些不返回网址的图片则具有“ ”

为什么会出现这种情况或图像存储库密钥可能代表什么?

(两张图片均来自http://en.wikipedia.org/wiki/W%C5%8Dden

1 个答案:

答案 0 :(得分:4)

问题似乎是Image:Wodan_Heilt_Balders_Pferd_by_Emil_Doepler.jpg不是图片本身,只是重定向到真实图片页面Image:Wodan_heilt_Balders_Pferd_by_Emil_Doepler.jpg(请注意小写h)。

如果我理解正确,如果您向查询添加&redirects,它应该有效,但实际上并非如此。我认为这是一个错误,所以我提交了bug report about this