GASでリバースジオコーディングしてみた★★★ – ビジボット

GASでリバースジオコーディングしてみた★★★ - ビジボット
GASでリバースジオコーディングしてみた★★★ - ビジボット
ビジネス

はじめに

今回のビジボットでは、ビジボット初の★3つ難易度『GASでリバースジオコーディングする』方法を紹介していきます!リバースジオコーディングとは緯度経度を住所情報に変換することです!今回は住所と最寄駅とその距離までを取得してみました!会社のクライアントがどういった属性か?分析するのに非常に役立ってくれてます!

それでは早速始めていきます!

1.完成コード

今回は『今日の運勢』を取得するのと同じく外部サービスのAPIを利用して取得しています!
コードの詳細については後ほど説明していきますので、まずは以下同様にシートの作成をしていきます。
※今回は色々時間がなくてヘッダー(prefとかcityとか)をコードで作成する処理を入れれませんでした…

取得したい情報の部分には『エリア』と『駅情報』を選択できるようにプルダウンで入力規則の登録を行っておきます。
『エリア』を選択した場合は住所情報、『駅情報』を選択した場合は最寄駅などの情報が取得されていきます。

リバースジオコーディング - ビジボット
リバースジオコーディング – ビジボット

それでは全体のコードを記載します。

2.コード説明

まず、スプレッドシートサイドで指定したgetflg(『エリア』か『駅情報』)をポップアップで表示して、取得する情報に誤りがないか確認します。
※『キャンセル』を選択したら処理中止、『OK』を選択したら処理開始

実行開始POPUP - ビジボット
実行開始POPUP – ビジボット

処理が開始したら緯度経度情報をスプレッドシート上から取得してそれぞれの関数(『getArea()』『getStation()』)に引数として渡して処理が進んでいきます。

getArea()の場合

住所情報を取得します。
リクエスト用のURLを作成し、APIのレスポンス結果を取得します。
形式はxml形式だったのですが、全くやったことなかったので物凄く調べて苦労しました。。(笑)

getStation()の場合

駅情報を取得します。
これも同様にリクエスト用のURLを作成し、APIのレスポンス結果を取得します。
形式はxml形式なので、Areaと同じように進めます。

上記、それぞれ実行するとエリア情報と駅情報が取得できました!
GoogleMapAPIも登録に色々かかるようになってしまったので、気軽にできないかな?ってことで始めたのが本コードを作ったきっかけでした。

なかなかリバースジオコーディングの情報でいい記事が見つからなかったので参考になればいいなと思います!

最後までお付き合い頂き、ありがとうございました!
今回は時間の都合上、あまり詳しい記事としてアップできなかったので、後日またトライさせてください!(笑)

全然できていないですが、GAS以外もSEOやマーケティングを勉強した記事を書いていきたいと思ってます…(笑)