可能重复:
Where can I get a list of all countries/cities to populate a listbox?
我正在寻找创建所有国家/地区的脚本。有人知道我可以在Ruby中轻松使用的免费ISO列表吗?
我可以在谷歌上找到列表,但我对yaml,csv或SQL插页不太幸运。
我对西班牙的所有城市也非常感兴趣。
编辑:国家+国家/地区代码
Edit2:对西班牙所有城市感兴趣。
答案 0 :(得分:6)
我相信这正是您所寻找的:http://download.geonames.org/export/dump/
答案 1 :(得分:2)
我一直在寻找类似的东西,并且遇到了World Countries 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"
},
我没看,但也许他们每个国家都有城市信息。
同样令人遗憾的是,他们不包括所说的母语但是嘿,它仍然是一个很好的资源。
P.S。我知道你要求YAML,但你可以在Ruby中使用JSON,还有YAML / JSON转换器。
答案 2 :(得分:1)
如果CSV可以,则基于ISO 3166:http://www.guavastudios.com/downloads/countries/countries.csv
答案 3 :(得分:0)
找到此类数据的好地方是http://thedatahub.org/服务。它支持RESTful API。