GoogleStatic Maps APIを使用しPythonで指定した場所のGoogleマップ画像を取得してみます。
GoogleStatic Maps APIを使用する場合は、事前にGoogle Maps Platform(グーグルマッププラットホーム)の登録しておく必要があります。
Google Maps Platform(グーグルマッププラットホーム)に登録後、「GoogleStatic Maps API」を有効にしておきます。その後、「認証情報を作成」で「APIキー」を事前に発行しておきます。
■Python
今回のPythonのバージョンは、「3.8.5」を使用しています。(Windows10)(pythonランチャーでの確認)
■GoogleStatic Maps APIを使用し指定した場所のGoogleマップ画像を取得する
import requests
#Maps Static API URL
BASE_URL = "https://maps.googleapis.com/maps/api/staticmap?"
#APIキー
API_KEY = "発行されたAPIキー"
#場所の指定
CITY = "Osaka"
#Googleマップのズームレベル
ZOOM = 14
# URLの更新
URL = BASE_URL + "center=" + CITY + "&zoom=" + str(ZOOM) + "&size=500x500&key=" + API_KEY
# HTTPリクエスト
response = requests.get(URL)
# HTTPリクエストに対して応答があった画像を保存する
with open('osakamap.png', 'wb') as file:
#ファイルへのデータの書き込み
file.write(response.content)インポートでrequestsモジュールを呼び出して、BASE_URLという変数を作成し、Maps Static API URLを格納します。
格納後、API_KEYという変数を作成し、認証情報の作成を行い発行されたAPIキーを格納します。
格納後、CITYという変数を作成し、指定する場所を決めて格納します。これが今回のGoogleマップの中心として定義されます。今回は「Osaka(大阪)」を指定します。
指定する場所を決めたら、ZOOMという変数を作成し、Googleマップのズームレベルを指定し格納します。今回は「14」と指定します。
指定後、URLという変数を作成し、GoogleStatic Maps APIにリクエストするURLを格納します。
格納後、responseという変数を作成し、GoogleStatic Maps APIに対してリクエストを行います。
リクエストに対して応答があった情報をwith文を使い、open()で第1の引数に保存する場所と、ファイル名、形式を指定します。次に第2の引数でwbモードと指定し、バイナリファイルを書き込みモードで開きます。開いたファイルに対して、write()でリクエストに対して応答があった情報を書き込みし保存します。
■実行
今回のスクリプトを「g_map.py」という名前で保存し、コマンドプロンプトから実行してみます。
実行してみると、カレントディレクトリ(作業ディレクトリ)に画像ファイルが保存されていることを確認できました。
画像ファイルの中身を確認すると、指定した場所のマップが表示できました。



コメント