【町域情報取得 API】PythonでwebAPIを使用しjsonデータの会得

以前やった郵便番号→住所・緯度・経度のAPIに続き他のものもやってみました。

使用するAPI はこちら。

郵便番号/住所/緯度経度データ変換サービス…

上記APIの中でも指定の都道府県、または指定の市区町村に存在する町域の情報の一覧を取得APIを使用。

以下貼り付けるとそのまま実行可能です。

また、以下の.json()はjson形式で会得するのに必要です。

これがないとresponse[200]のような形が出力されます(200は成功したよ!ということです)

 

今回のAPIはURLエンコードした都道府県名が必要のため、urllib.parse.quote(“滋賀県”)を使用しています。

※URLエンコードとは上記の滋賀県なら%E6%BB%8B%E8%B3%80%E7%9C%8Cにすること。

詳しくは以下参照。

Pythonの標準ライブラリのurllib.parseモジュールを使うと、文字列のURLエンコード(パーセントエンコード…

import requests
import urllib

a=urllib.parse.quote("滋賀県")
url="https://geoapi.heartrails.com/api/json?method=getCities&prefecture="+a
response=requests.get(url)
response=response.json()


print(a)
print(response)
print(response['response'])

上記を実行すると以下が出力されます。

%E6%BB%8B%E8%B3%80%E7%9C%8C
{'response': {'location': [{'city': '大津市', 'city_kana': 'おおつし'}, {'city': '彦根市', 'city_kana': 'ひこねし'}, {'city': '長浜市', 'city_kana': 'ながはまし'}, {'city': '近江八幡市
', 'city_kana': 'おうみはちまんし'}, {'city': '草津市', 'city_kana': 'くさつし'}, {'city': '守山市', 'city_kana': 'もりやまし'}, {'city': '栗東市', 'city_kana': 'りっとうし'}, {'city': '甲賀市', 'city_kana': 'こうかし'}, {'city': '野洲市', 'city_kana': 'やすし'}, {'city': '湖
南市', 'city_kana': 'こなんし'}, {'city': '高島市', 'city_kana': 'たかしまし'}, {'city': '東
近江市', 'city_kana': 'ひがしおうみし'}, {'city': '米原市', 'city_kana': 'まいばらし'}, {'city': '蒲生郡日野町', 'city_kana': 'がもうぐんひのちょう'}, {'city': '蒲生郡竜王町', 'city_kana': 'がもうぐんりゅうおうちょう'}, {'city': '愛知郡愛荘町', 'city_kana': 'えちぐんあいしょ
うちょう'}, {'city': '犬上郡豊郷町', 'city_kana': 'いぬかみぐんとよさとちょう'}, {'city': '
犬上郡甲良町', 'city_kana': 'いぬかみぐんこうらちょう'}, {'city': '犬上郡多賀町', 'city_kana': 'いぬかみぐんたがちょう'}]}}
{'location': [{'city': '大津市', 'city_kana': 'おおつし'}, {'city': '彦根市', 'city_kana': 'ひこねし'}, {'city': '長浜市', 'city_kana': 'ながはまし'}, {'city': '近江八幡市', 'city_kana': 'おうみはちまんし'}, {'city': '草津市', 'city_kana': 'くさつし'}, {'city': '守山市', 'city_kana': 'もりやまし'}, {'city': '栗東市', 'city_kana': 'りっとうし'}, {'city': '甲賀市', 'city_kana': 'こうかし'}, {'city': '野洲市', 'city_kana': 'やすし'}, {'city': '湖南市', 'city_kana': 'こなんし'}, {'city': '高島市', 'city_kana': 'たかしまし'}, {'city': '東近江市', 'city_kana': 'ひがしおうみし'}, {'city': '米原市', 'city_kana': 'まいばらし'}, {'city': '蒲生郡
日野町', 'city_kana': 'がもうぐんひのちょう'}, {'city': '蒲生郡竜王町', 'city_kana': 'がもう
ぐんりゅうおうちょう'}, {'city': '愛知郡愛荘町', 'city_kana': 'えちぐんあいしょうちょう'}, {'city': '犬上郡豊郷町', 'city_kana': 'いぬかみぐんとよさとちょう'}, {'city': '犬上郡甲良町', 'city_kana': 'いぬかみぐんこうらちょう'}, {'city': '犬上郡多賀町', 'city_kana': 'いぬかみぐ
んたがちょう'}]}

今回は詳しいjson解析は行っていません。

詳しく知りたい方は以下記事を参照に。

https://joshi-engineer.com/%e3%80%90%e9%83%b5%e4%be%bf%e7%95%aa%e5%8f%b7%e3%81%8b%e3%82%89%e4%bd%8f%e6%89%80%e3%80%91python%e3%81%a7webapi%e3%82%92%e4%bd%bf%e7%94%a8json%e3%83%87%e3%83%bc%e3%82%bf%e3%81%ae%e4%bc%9a%e5%be%97