親子IoTワークショップ

マイコンとクラウドを使ってIoTとプログラミングを学ぼう

[ トップ | 開催予定・概要 | 2024-12開催 | お知らせ | Facebook ]

IPアドレスから緯度、経度などの位置情報を調べる

ラズパイが使っているIPアドレスからその場所(位置情報)を調べることができます。まずは、以下のコマンドを実行して準備してください。

` sudo pip3 install geocoder `

このgeocoderというモジュールを使って位置情報の検索をします。ip-loc.pyusstates.pyを同じフォルダに置いて、ip-loc.pyを実行してください。

IPアドレスから現在地を検索するには、関数geocoder.ip()"me"という値を渡します。

geoInfo = geocoder.ip("me")

この関数は現在地の位置情報を返します。それを取り出すには以下のようにします。

# ラズパイが使っているIPアドレス
ip = geoInfo.ip
# 現在地の緯度
lat = geoInfo.lat
# 現在地の経度
lon = geoInfo.lng
# 現在地の都市名
city = geoInfo.city
# 現在地の州名
state = geoInfo.state
# 現在地の郵便番号
zipCode = geoInfo.postal
# 現在地の国名
country = geoInfo.country

州の名前は、「Massachusetts」などフルネームになっています。これを2文字の略称(州名コード)に変換するには以下のようにしてください。

stateCode = stateToStateCode[state]

自習プロジェクトの目次に戻る