• ベストアンサー

perl で googleAPIを呼び出す方法

perlプログラムにて、住所から 緯度経度を一括取得したいと考えております。 入力ファイル(住所データ リスト)1万レコード程度  千代田区○○1-1-1  港区XX2-2-2  ・・・ 出力ファイル(住所<TAB>緯度<TAB>経度)  千代田区○○1-1-1<TAB>3X.XXX<TAB>13X.XXX  港区XX2-2-2<TAB>3X.XXX<TAB>13X.XXX  ・・・ GoogleAPIを使えばよいのかと思いますが、全くperlからの呼び出し方法がわかりません。 教えてください。(widowsにperlをインストールして 使っています。)

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

http://maps.googleapis.com/maps/api/geocode/json?address=<URLエンコードした住所>にアクセスし、json形式でデータをもらう。 jsonデータの中に"geometry" : -> "location" があるので、緯度経度を取得できる。 例 東京都港区芝公園1丁目5番25号 http://maps.googleapis.com/maps/api/geocode/json?address=%E6%9D%B1%E4%BA%AC%E9%83%BD%E6%B8%AF%E5%8C%BA%E8%8A%9D%E5%85%AC%E5%9C%921%E4%B8%81%E7%9B%AE5%E7%95%AA25%E5%8F%B7

1204533
質問者

お礼

json形式で取得できました。ありがとうございました。

その他の回答 (1)

回答No.1

PerlやPHPで、Google Mapを使うなら、Google Maps JavaScript APIが妥当です。 私は、申し訳ありませんが、Perlは全くできないので、以下の程度の提言に なってしまいますが、参考なればと思います。 #!/usr/local/bin/perl print "Content-Type: text/html; charset=Shift_JIS\n\n"; print "<html>";  ここに Google Maps JavaScript APIのコード print "</html>"; exit; それから、Google Maps JavaScript APIの【無料版】についての注意です。  →別に有料の API for Business というのがあります  ・一日にリクエストできるのは、最大2500まで  ・住所から緯度経度への連続変換についても禁止    →1秒あたり1リクエストでも途中で制限がかかります ということで、1万レコードということは、個人の趣味範疇ではないですよね。 かなり高額だったと思いますが、API for Business が良いでしょう。

1204533
質問者

お礼

やり方は違いますが、perlで処理できました。 また、APIの制約条件について調べていただき、ありがとうございました。

関連するQ&A