ホーム > タグ > Google Maps

Google Maps

Google Static Map APIと携帯GPS連携

ここ数日の間に、ITmediaでもGoogle マイマップ自動保存による情報漏洩問題が取り上げている模様。まあしかし、少し前だとグーグル八分、しばらくはストリートビュー、今度はマイマップと、何かときな臭い話の絶えないGoogleですが、正直Googleにまったく依存しないのは難しいし、Web業界だったら不可能だ。

まーだからこそ寡占ってイヤだねぇという話なのだけど、検索精度の上がってきたYahooやMSNはどうなのだろう、とちょっと使ってみたところ、やはりテキスト検索ではさっぱり使い物にならん。いや、Googleのテキスト検索精度がそれだけ高いということなのだろうけど、履歴記憶一切無しにしていても、テキスト検索でGoogleは強い(まあ画像はイマイチだけど)。

その上、先日故あってインターンシップのサンプルプログラムでGoogle Map APIのプログラムを作ったのも皮肉な話だ。まあ、GPS連携とか、同様の処理(Yahoo!地図とか)には部分的に使いまわせるトコもあると思うのでメモっておこう。あ、Perlです。

今回試したのは、携帯GPSとGoogle Static Map APIの組み合わせデモプログラム。通常のGoogle MapはJavascriptでAjaxバリバリですが、携帯ブラウザでは閲覧できないので、Static Mapを使います。と言っても、値を渡すURLと、一枚の画像として出力される点が異なるだけです。URLは以下のような形式になっていますので、値を渡してやれば画像が出力されます。

<img src=”http://maps.google.com/staticmap?center=[緯度],[経度]&zoom=[ズーム]&size=[横x縦]&maptype=mobile&markers=[緯度],[経度],redp&key=[APIキー]” />

こんな感じで…staticmap?の後に引数を渡します。各項目の詳細は以下。

  • center 画像の中心の経度と緯度。カンマで区切る。
  • zoom 画像の倍率。数値。大きいほど寄り、小さいほど引きになる。とりあえず15くらいでテストした。
  • size 横x縦。ピクセル単位、真ん中はx(小文字エックス)で区切る。今の携帯だと240×320くらいかな。
  • maptype 今回は携帯なのでmobile。roadmapというのもありますが、今回使ってないからやってません。
  • markers マーカーの緯度,経度,色と文字。緯度経度はcenterと同様に指定すればOKですが、色と文字は例えば赤でAと表示したければreda、青でPと表示したければbluepと指定。どんな色があるかは調べて下さい。
    ちなみに[マーカー引数]%7C[マーカー2引数]%7C…とやることで複数のマーカーを指定できます。
  • key APIキー。

とりあえず基本はこんだけ。ドコモの場合、formタグやaタグの最後に

<form action=”url” method=”GET” lcs>

とlcsをつけると位置情報をプログラムに渡せるので、取得した位置情報を先ほどのURLに渡…したいのですが、実はGoogleとドコモはどちらも世界測地系のWGS84とやらを使っているのですが、ドコモで取得した値はdms(度分秒)なのに対し、ここでAPIに渡す値はdegree(度)になっているので、途中に変換処理をかます必要があります。計算式もあるようですが、PerlならGeo::Coordinates::Converterを使うと、さまざまな表記法を相互変換してくれます。とりあえず、今回のdms→degreeであれば、

use Geo::Coordinates::Converter;
(略)
my $geo = Geo::Coordinates::Converter->new( lat => $lat, lng => $lon, datum => ‘wgs84′);
my $point = $cgeo->convert( dms => ‘degree’ );

こんな感じで緯度・経度・測地系、変換元形式・変換後形式を指定してやればOK。

このモジュールの使い方は、なんか今CPANつながらなかったので、飛んで検索してもらえばよいかと。

Googleはそのうち裸の王様になるだろうか?

最近、セキュリティ研究者の高木浩光氏の日記をよく読んでいる。元々はあまり関係ないことを調べているときに発見して、「口調は乱暴だけど、筋は通てるし、検証もよくここまでするなー」などと思ってたらプロの方でした。

最近Googleではストリートビューのほうが議論の対象になってるし、実際にここでもそんなことを書いていた(Google Mapストリートビュー、法的OKでももっと慎重になるべきでは)けど、割とそっちのほうはネットでも騒がれてたし、目新しかったこともあってかあちこちで騒がれていた。しかし高木氏の日記を読んでいたら、(ストリートビュー問題は当然だが)ずっと前から公開されていたのに、Google マイマップの実装がかなりひどいことになっている点が指摘されていた。Map系のサービスはそれまでもあったから、あんまり話題にはなってなかったからだろうか。

  • 非公開に設定したマップでも公開される(検索に引っかかることがある)
  • 保存ボタンを押してないのに自動的に保存されてしまうので、非公開にするまえに公開されてしまうことがある
  • 非公開はアクセス制御はしてないので、URLを叩かれたら誰でも見られる
  • 消したデータが消えない
  • Googleに問い合わせて削除依頼が受け付けられても長期間対応されない
  • 消したとしても再度データが復活することが割とある

詳しくは氏の日記で画像付で詳しく説明されているから、ここではあくまで個人的にはじめて知って驚いた点のみにとどめるが、実際コレで家庭訪問名簿とか、倒産しそうな企業リストとか、近所のマップとか、コメント付顧客名簿とか、かなり洒落になっていないものが流れてしまっているようだ。

Googleは才能やアイデアのある人が、自由にそれを発揮できるような会社ではあるのだろう、きっと。しかし、能があることと、それをどう使うかはまた別問題なワケで、自由が故に「普通だったらやめとくよね、倫理的に」ということも結構やっちゃう。それが人のモラルの範囲内で許容されるものだったら、これまでGoogleが提供してきた幾つものサービスのように賞賛されるのだろう。が、このへんは作りたいもの作った人が、法とかモラルとかそういったものをあまり重く見ずに作りっぱなしで公開しちゃった、後の対応はまあのらりくらりで…という感じがする。
高木氏、および書かれている日記内のGoogleとの電話でのやりとりはいい加減なものだった。電話担当者、無言。矛盾。言ってることが伝わってない。明らかに同様している。説明になってない。技術は一流だけど、事務的な部分に関しては普通よりも杜撰だ。

何で登録したのかは忘れたが、Googleアカウントで一番最初に違和感を感じたのは、検索履歴がデフォルトで収集される設定になっていたこと。まあ、誰が検索したのかと紐付けなければ、どこの検索サイトでもエンジンの解析のためにやっていることであって特に問題はないのだが、自分のWeb行動履歴が、自分しか見られない(はずの)アカウント内でとは言え、数年分に渡って残されていたわけだ(しかもそのことを自身がアカウント作成時には知らされていなかったし)。そのときはなんとなく気持ち悪かったので削除し、履歴を収集しないようにした。もしそれを知ったのが今だったなら、確実に漏洩が頭をよぎって削除するだろう。それ以降も「Google八分とは何か」を読んだとか、今回の件とか、不信感が募っていっていたのは確かだ。

仕事上、Webが絡む仕事なんて、もはやGoogleに擦り寄らないと飯が食えない業界だし、確かにテキスト検索では秀でていたからこそ急激にシェアも伸ばしてあそこまで大きくなったワケだけど、なんというか、さすがにちょっとやり過ぎ。個人情報の削除も依頼通り満足にこなせないようだし、ストリートビューも一定の評価はするものの、違法事例や「後から言ってくれたら削除するから」といった態度がどうも納得できない。個人情報取り扱いのポリシーを厳格化した上でちゃんと運営されるようになったとわかるまでは、極力個人情報を渡したくない会社だと思う。
以前本で(なんだったか、Web系の有名な本だ…)、「世界政府と呼ぶべきものがあるとしたら、Googleはそれになろうとしている」といった意のGoogle社員の発言があったが、お断りだ。謙虚さのない、傲慢なヤツが上に立ってまともな結果が得られた歴史なんてあっただろうか?

まあ、しばらくGoogle検索に頼ってはいたけど、最近はYahoo!やMSN Live Searchもエンジンがかなり高性能化してきたらしいし、この機会にそちらを使ってみてもいいかな。特に画像検索ではこの三者ならMSNが強いらしい(使わないけどさ)。

Home > Tags > Google Maps

Search
Link
Feeds
Meta

Return to page top