从Wikidata获取Wikipedia infoxbox数据

时间:2020-06-20 22:56:54

标签: mediawiki wikipedia wikidata

我正试图从Wikidata的API获取许多公司的Wikipedia infoxbox数据。例如,Deliveroo:

https://www.wikidata.org/w/api.php?action=wbgetentities&format=jsonfm&sites=enwiki&titles=Deliveroo&props=info%7Clabels%7Cdescriptions%7Cclaims&languages=en

API返回的JSON(在这种情况下,实际上是嵌入在HTML中的JSON-对于纯JSON使用format = jsonfm)缺少了Wikipedia页面上的某些数据,例如“ Industry:在线食品订购,食品配送”。有什么办法可以用Wikidata查找这些数据吗?另外,返回的数据使用代码代替属性名称,例如,对于Wikipedia信息框中的“ Founded”属性,Wikidata具有:

mainsnak": {
                            "snaktype": "value",
                            "property": "P571",
                            "hash": "7f617d23c9e1f8b6ce23c06baf4d3bdad9b4fbb9",
                            "datavalue": {
                                "value": {
                                    "time": "+2013-00-00T00:00:00Z",
                                    "timezone": 0,
                                    "before": 0,
                                    "after": 0,
                                    "precision": 9,
                                    "calendarmodel": "http://www.wikidata.org/entity/Q1985727"
                                },
                                "type": "time"
                            },
                            "datatype": "time"
                        },

我猜测"property": "P571",指的是founded属性,但是我不确定如何将这些代码映射为实际的文本名称。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

不能保证Wikidata包含Wikipedia信息框所包含的所有数据。许多Wikipedia社区决定在其信息框中包含Wikidata,但并非全部(特别是英语Wikipedia以不使用Wikidata数据而闻名)。即使是使用了Wikidata中数据的Wikipedia,也不需要使用所有数据,他们仍然可以决定手动填充某些数据。

如果您只想使用信息框中的数据,也许使用https://dbpedia.org是更好的选择?