我自己一直在寻找类似的东西,偶然发现了 World Country API,它有一个指向 JSON 文件的链接; http://www.geognos.com/api/en/countries/info/all.json.
您还可以按国家/地区提取信息。这里是西班牙; http://www.geognos.com/api/en/countries/info/ES.json
这个 API 的一大优点是它提供的信息比基本的国家/地区名称/代码多得多。这是一个输出示例;
"ES": {
"Name": "Spain",
"Capital": {
"DLST": 1,
"TD": 1,
"Flg": 2,
"Name": "Madrid",
"GeoPt": [
40.24,
-3.41
]
},
"GeoRectangle": {
"West": -18.169641,
"East": 4.3153896,
"North": 43.791725,
"South": 27.638817
},
"SeqID": 66,
"GeoPt": [
40,
-4
],
"TelPref": "34",
"CountryCodes": {
"tld": "es",
"iso3": "ESP",
"iso2": "ES",
"fips": "SP",
"isoN": 724
},
"CountryInfo": "http://www.geognos.com/geo/en/cc/es.html"
},
我没看,但也许他们有每个国家/地区的城市信息。
很遗憾,它们不包括所讲的母语,但是嘿,它仍然是一个很好的资源。
附注我知道您要求使用 YAML,但您可以在 Ruby 中使用 JSON,并且还有 YAML/JSON 转换器。