« Google Mapsを介して座標取得するPerlスクリプト | メイン | ActivePerlでCatalystにチャレンジ!! »

修正版・Google Mapsを介して座標取得するPerlスクリプト

先日のスクリプトだと住所が特定できない場合に福井県沖の座標が帰ってくるというバグがありましたので、その辺を修正。

あと緯度経度がマイナスのことも考慮していなかった(国内だとありえんけど)。

use strict;
use Jcode;
use LWP::Simple qw($ua get);
# ヨドバシカメラ梅田店の座標を取得
my $addr = jcode("大阪府大阪市北区大深町1-1")->utf8;
$addr =~ s/(\W)/'%' . unpack('H2', $1)/eg;
my $res = get("http://maps.google.co.jp/maps?q=$addr");
if($res =~ /<refinements><refinement>/si){
  print "Error.";
}
elsif($res =~ /<center lat="([0-9\.\-]+)" lng="([0-9\.\-]+)"\/>/si){
  my ($lat, $lng) = ($1, $2);
  print "$lat, $lng";
}

この辺を取り込んだこんなのの作成を支援するWindowsアプリケーションをこそこそ開発中です。

近日中にβ版を公開できるかと。

トラックバック

このエントリーのトラックバックURL:
http://hsj.jp/blog/mt-tb.cgi/1235

コメントを投稿

(いままで、ここでコメントしたことがないときは、コメントを表示する前にこのブログのオーナーの承認が必要になることがあります。承認されるまではコメントは表示されません。そのときはしばらく待ってください。)

About

2005年07月18日 23:22に投稿されたエントリーのページです。

ひとつ前の投稿は「Google Mapsを介して座標取得するPerlスクリプト」です。

次の投稿は「ActivePerlでCatalystにチャレンジ!!」です。

他にも多くのエントリーがあります。メインページアーカイブページも見てください。

Powered by
Movable Type