我正在使用wikidata来获取研究数据。
我的目标是每个给定的名字,例如Abdias Praetorius,获得实体的id,dob,出生地,性别等。
该页面是: https://www.wikidata.org/wiki/Q308161 这似乎很容易。
但是当我使用wiki-data FetchOnlineDataExample.java 代码并对其进行了一些修改。然后我得到一些这样的信息:
{de=["Abdias Praetorius" (de), "Gottschalk Schultze" (de)]}
http://www.wikidata.org/entity/P21 :: http://www.wikidata.org/entity/Q6581097 (item)
http://www.wikidata.org/entity/P19 :: http://www.wikidata.org/entity/Q486985 (item)
http://www.wikidata.org/entity/P20 :: http://www.wikidata.org/entity/Q6837 (item)
http://www.wikidata.org/entity/P27 :: http://www.wikidata.org/entity/Q183 (item)
http://www.wikidata.org/entity/P214 :: "20740552"
http://www.wikidata.org/entity/P227 :: "128621761"
...
这很好。因为它在网页中字面定义,例如 "死亡地点"是页面中的项目:
http://www.wikidata.org/entity/P20
" Wittenberg的"是页面中的项目:
https://www.wikidata.org/wiki/Q6837
我的问题是: 有什么方法我只能废弃"出生地:wittenberg"?我知道只需抓取整个网页并阅读dom数据就可行了。如果有更好的方法,我只是好奇。
答案 0 :(得分:1)
您可以使用wbgetentities API获取商品或媒体资源的标签。还有a third-party API在后台使用维基数据,但结果格式更方便:http://api.haykranen.nl/wikidata/entity?q=308161