サンプルコード
require 'json'
require 'open-uri'
# RESAS-API - 市区町村一覧
# https://opendata.resas-portal.go.jp/docs/api/v1/cities.html
# /result/bigCityFlag
# 特別区・行政区フラグ(0:一般の市区町村、1:政令指定都市の区、2:政令指定都市の市、3:東京都23区)
def get_type(bigCityFlag)
case bigCityFlag
when '0' then ''
when '1' then ' (政令指定都市の区)'
when '2' then ' (政令指定都市)'
when '3' then ' (東京都23区)'
else ''
end
end
prefCode = '23' # 愛知県の都道府県コード
prefCode = ARGV[0] if ARGV[0]
base_url = 'https://opendata.resas-portal.go.jp/api/v1/cities'
params = {'prefCode' => prefCode}
url = base_url + '?' + URI.encode_www_form(params)
headers = {'X-API-KEY' => 'YOUR RESAS API KEY'}
data = JSON.parse(open(url, headers).read)
data['result'].each{|v|
puts "#{v['cityCode']}: #{v['cityName']}#{get_type(v['bigCityFlag'])}"
}
実行結果 (愛知県の都道府県コード「23」を指定した場合)
23100: 名古屋市 (政令指定都市)
23101: 名古屋市千種区 (政令指定都市の区)
23102: 名古屋市東区 (政令指定都市の区)
23103: 名古屋市北区 (政令指定都市の区)
23104: 名古屋市西区 (政令指定都市の区)
23105: 名古屋市中村区 (政令指定都市の区)
23106: 名古屋市中区 (政令指定都市の区)
23107: 名古屋市昭和区 (政令指定都市の区)
23108: 名古屋市瑞穂区 (政令指定都市の区)
23109: 名古屋市熱田区 (政令指定都市の区)
23110: 名古屋市中川区 (政令指定都市の区)
23111: 名古屋市港区 (政令指定都市の区)
23112: 名古屋市南区 (政令指定都市の区)
23113: 名古屋市守山区 (政令指定都市の区)
23114: 名古屋市緑区 (政令指定都市の区)
23115: 名古屋市名東区 (政令指定都市の区)
23116: 名古屋市天白区 (政令指定都市の区)
23201: 豊橋市
23202: 岡崎市
23203: 一宮市
23204: 瀬戸市
23205: 半田市
23206: 春日井市
(以下略)
実行結果 (東京都の都道府県コード「13」を指定した場合)
13101: 千代田区 (東京都23区)
13102: 中央区 (東京都23区)
13103: 港区 (東京都23区)
13104: 新宿区 (東京都23区)
13105: 文京区 (東京都23区)
13106: 台東区 (東京都23区)
13107: 墨田区 (東京都23区)
13108: 江東区 (東京都23区)
13109: 品川区 (東京都23区)
13110: 目黒区 (東京都23区)
13111: 大田区 (東京都23区)
13112: 世田谷区 (東京都23区)
13113: 渋谷区 (東京都23区)
13114: 中野区 (東京都23区)
13115: 杉並区 (東京都23区)
13116: 豊島区 (東京都23区)
13117: 北区 (東京都23区)
13118: 荒川区 (東京都23区)
13119: 板橋区 (東京都23区)
13120: 練馬区 (東京都23区)
13121: 足立区 (東京都23区)
13122: 葛飾区 (東京都23区)
13123: 江戸川区 (東京都23区)
13201: 八王子市
13202: 立川市
13203: 武蔵野市
13204: 三鷹市
13205: 青梅市
13206: 府中市
参考資料
- RESAS-API - 地域経済分析システム(RESAS)のAPI提供情報 https://opendata.resas-portal.go.jp/
- RESAS-API - 市区町村一覧 https://opendata.resas-portal.go.jp/docs/api/v1/cities.html