python3
GeoCoding
緯度
経度

緯度経度から都市の名前を得る

Google Maps Geocoding API の リバースジオコーディング の例です。
api_key は置き換えて下さい。

reverse_geo.py
#! /usr/bin/python
# -*- coding: utf-8 -*-
#
#   reverse_geo.py
#
#                   Apr/13/2018
#
# ------------------------------------------------------------------
import  sys
import  json
import  requests
#
# ------------------------------------------------------------------
def parser_results(json_str):
    dict_aa = json.loads(json_str)
#
    city = ""
    pref = ""
    components = dict_aa['results'][0]['address_components']
    for it in range(len(components)):
        unit_aa = components[it]
        if (unit_aa['types'][0] == "locality"):
            city = unit_aa['short_name']
        elif (unit_aa['types'][0] == "administrative_area_level_1"):
            pref = unit_aa['short_name']
#
    return city,pref
# ------------------------------------------------------------------
def get_city_pref_proc(lat,lon):
    api_key="***************************************"
    url_aa="https://maps.googleapis.com/maps/api/geocode/json?latlng="
    url=url_aa + str(lat) + "," + str(lon) + "&language=ja&key=" + api_key
    res = requests.get(url)
    json_str=res.text
    city,pref = parser_results(json_str)
    print(lat,lon,city,pref)
#
# ------------------------------------------------------------------
sys.stderr.write("*** 開始 ***\n")
#
#
get_city_pref_proc(43.08,141.35)
get_city_pref_proc(36.56,139.88)
get_city_pref_proc(35.91,139.66)
get_city_pref_proc(35.68,139.76)
get_city_pref_proc(35.16,136.90)
get_city_pref_proc(34.70,135.50)
get_city_pref_proc(33.59,130.42)
get_city_pref_proc(31.56,130.56)
get_city_pref_proc(26.21,127.68)
#
#
sys.stderr.write("*** 終了 ***\n")
# ------------------------------------------------------------------

実行結果

$ ./reverse_geo.py 
*** 開始 ***
43.08 141.35 札幌市 北海道
36.56 139.88 宇都宮市 栃木県
35.91 139.66 さいたま市 埼玉県
35.68 139.76 千代田区 東京都
35.16 136.9 名古屋市 愛知県
34.7 135.5 大阪市 大阪府
33.59 130.42 福岡市 福岡県
31.56 130.56 鹿児島市 鹿児島県
26.21 127.68 那覇市 沖縄県
*** 終了 ***