当前位置:  开发笔记 > 编程语言 > 正文

如何通过API从Wikidata项目获取图像URL属性?

如何解决《如何通过API从Wikidata项目获取图像URL属性?》经验,为你挑选了1个好方法。

我制作了一个使用JSON Google图片搜索API来提供图片的Android应用,但我注意到谷歌已停止支持它.我还发现维基数据有时会在某些项目上提供图像属性,但我似乎无法使用维基数据API获取图像的URL位置.

有没有办法从维基数据中的项目获取图像URL属性?



1> Termininja..:

如果某个维基数据项(ID:Qxxx)具有图像(P18)属性,则可以通过MediaWiki API访问它:

https://www.wikidata.org/w/api.php?action=wbgetclaims&entity=Qxxx&property=P18

答复将包括:

"claims": {
        "P18": [{ "mainsnak": { "datavalue": { "value": "img_name.ext" }}}]
}

其中img_name.ext是您要查找的图像的名称(所有空格都必须替换_).

最终图像的URL将是:https://upload.wikimedia.org/wikipedia/commons/a/ab/img_name.ext其中一个b分别是第一和第二字符的md5sum所述的img_name.ext.

例如,对于项目jaguar(Q35694),API将返回图像名称" Junior-Jaguar-Belize-Zoo.jpg ",其中包含md5sum:21 3b31ec141dafebe457e49bcd7f9329,因此a = 2且b = 1,或者最终图像URL将是:https://upload.wikimedia.org/wikipedia/commons/2/21/Junior-Jaguar-Belize-Zoo.jpg


太好了!你也可以像这样直接获得调整大小的图像网址:https://commons.wikimedia.org/w/thumb.php?width = 500&f = Junior-Jaguar-Belize-Zoo.jpg尽管如此,请注意请求大小超过原始图像大小将返回错误
推荐阅读
coco2冰冰
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有