2017-09-30 49 views
3

我正在寫與在標籤和描述被添加到項目維基數據交互的工具。但我想在嘗試添加之前驗證該語言是否受支持。如何獲得所有允許語言的維基數據

所以我的問題是如何得到允許的語言代碼的列表。該文檔將其描述爲UserLanguageCode,但未提供有關檢索允許值的信息。

我知道我可以通過對數據庫執行以下SQL操作來獲得所有使用的語言的列表,但這樣做既慢又低效:SELECT DISTINCT term_language FROM wb_terms

順便說一句是允許的語言列表同樣爲MonolingualText語句?在IRC頻道#wikidata

+1

那些是一樣的['行動=查詢&元= SITEINFO&siprop = languages'](https://www.wikidata.org/w/api.php?action=help&modules=query%2Bsiteinfo)? – Bergi

+1

每https://www.mediawiki.org/wiki/API:Siteinfo這些是鏈接到MediaWiki用戶界面語言。目前還不清楚這是否與允許的標籤語言相同。雖然它與允許的MonolingualText語言不同。例如。 'nl-informal'出現在那裏,可以用於標籤,但不適用於MonolingualText。 –

回答

3

用戶呼發現此解決方案:

在這個地址獲取JSON有效載荷:

https://www.wikidata.org/w/api.php?action=paraminfo&modules=wbsetlabel

,並提取

modules[0].parameters[8].type 

有中確實較少語言這個列表比MediaWiki的所有UI語言都要好。

+1

謝謝。這有助於獲得'label'和'alias'的允許語言。看起來好像「MonolingualText」允許使用的語言列表是不同的,而且現在還不能訪問。 小記。如果參數的順序發生變化,我可能會迭代它們,然後選擇與'name'=='language''對應的'type' –

相關問題