【问题标题】:Getting Wikipedia infoxbox data from Wikidata从 Wikidata 获取 Wikipedia infoxbox 数据
【发布时间】:2020-06-20 22:56:54
【问题描述】:

我正在尝试从 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 页面的一些数据,例如“行业:在线食品订购、食品配送”。有没有办法用维基数据找到这些数据?此外,返回的数据使用代码代替属性名称,例如,对于 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 属性,但我不确定如何将这些代码映射到实际的文本名称。任何帮助将不胜感激。

【问题讨论】:

  • 我不确定,但认为 API 解决方案会很痛苦(您可能不得不再次询问 API 以将编码属性翻译成人类语言)。对于这些任务,使用SPARQL 构建查询要容易得多。例如,访问this query 并打开右侧的“编辑 SPARQL”...它会简单地获取食品行业的所有公司并打印它们的位置和运营项目(如果有)。您可以获取 JSON 和其他格式的结果。
  • 好吧,也许...您需要获得哪些公司?这只是一些公司的列表,还是您想要所有具有某些特征的公司(例如 GB 的食品行业)?
  • 不一定是同一个数据。有关更多详细信息/其他选项,请参阅this answer
  • 我不知道任何可以从信息框中提取所有字段的解决方案。 Wikipedia 中的一些信息框是从 Wikidata 填充的,但是有些是手动维护的并且具有不同的结构(这就是 @Tgr 所说的)。要深入了解可用的内容,您可以查看Deliveroo Wikidata item。如您所见,没有关于英国或“科技”的信息。一般来说,您可以过滤项目并获取某些属性的值。但不幸的是,要获得所有公司的所有价值是不可能的(或非常困难的)。
  • @Max888 DBPedia 数据提取自维基百科信息框(以及其他一些来源)。 Wikidata 通常不是,尽管有时人们确实将信息从 Wikipedia infobox 复制到 Wikidata,并且一些 Wikipedia infobox 确实从 Wikidata 中提取信息。因此,如果您特别想要信息框中的数据,您应该使用 DBPedia。 Wikidata 的信息有些不同 - 可能更好或更糟,取决于您的用例。

标签: mediawiki wikipedia wikidata


【解决方案1】:

不保证维基数据包含维基百科信息框所包含的所有数据。许多维基百科社区决定在他们的信息框中使用维基数据,但不是全部(值得注意的是,英文维基百科以不使用维基数据而闻名)。即使是确实使用来自维基数据的数据的维基百科,他们也不需要使用所有数据,他们仍然可以决定手动填写一些数据。

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-07-14
    • 2012-11-26
    • 2011-03-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多