2014-03-04 47 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