2014-03-04 33 views
4

我设法做的唯一事情是这样的链接:如何获取给定维基数据ID的语句列表?

https://www.wikidata.org/w/api.php?action=wbgetentities&ids=Q568&format=jsonfm 

但是,这会产生大量的无用数据。我需要的是获取给定项目的所有语句,但在上面的查询中我看不到任何语句。

这里将是:

{ "instance of" : "chemical element", 
    "element symbol" : "Li", 
    "atomic number" : 3, 
    "oxidation state" : 1, 
    "subclass of" : ["chemical element", "alkali metal"] 
// etc... 
} 

是否有这样的一个API或我必须刮网页?

回答

3

你想要的信息在你的查询中,除非它很难解码。例如,这样的:

"P246": [ 
      { 
      "id": "q568$E47B8CE7-C91D-484A-9DA4-6153F132997D", 
      "mainsnak": { 
       "snaktype": "value", 
       "property": "P246", 
       "datatype": "string", 
       "datavalue": { 
       "value": "Li", 
       "type": "string" 
       } 
      }, 
      "type": "statement", 
      "rank": "normal", 
      "references": … 
      } 
     ] 

意味着“元件符号”(property P246)是“李”。因此,您需要阅读查询中的所有属性,然后找出您找到的每个属性的名称。

为了得到这些陈述,您也可以使用action=wbgetclaims,但它的格式与上面相同。

+0

以下是一个可能有所帮助的示例:[用于Q568的wbgetclaims](https://www.wikidata.org/w/api.php?action=wbgetclaims&entity=Q568&format=jsonfm) – nealmcb