地図レシピ – 一応完成

しばらく放置されていた地図レシピを完成させました。

ただ、google の仕様が変わった(?)のか、地図がダウンロードできなくなっているようでして、
実際の地図をダウンロードしての確認はできてないです。

各都道府県別にズームレベル 2〜19 の範囲のダウンロードスクリプトを格納してあります。

とりあえずは欲しい領域を down_img.pl へコピペしてご利用ください。

と、そのまえに Google Maps の仕様変更に対応しないとですね・・・。
制限が強化されてしまってダウンロードが難しくなっていなければいいのですが・・・。

追記:

Windowユーザ向けのzip形式を追加しました。
ディレクトリ名に漢字を使っているので、tar 形式だと化けるためです。
WIndowsユーザの方は zip 形式をお使いください。

Google Mapsの仕様が変わったというよりは、ダウンローダで地図をダウンロードしている人を制限しているようです。
最初はダウンロードできるのですが、ある程度ダウンロードするとパタリと 0 byte ファイルになってしまいます。

また、そうなるとブラウザで Google Maps を見ても表示されなくなります。IPアドレスで制限しているのかもしれません。

もともと想定外の使い方なので、サーバに負荷をかけないように、ゆっくりダウンロードするしかないのかもしれませんね・・・。

 

関連した記事:


10 comments

  1. ついに完成しましたか!
    これで地図のDLに難儀する方は確実に少なくなりますね。
    ありがたやありがたや…。

    ところで、この地図レシピはどうやって作られたのでしょうか?
    以前の国土交通省のデータからではちょっと難しそうでしたが、もしや0.1.1のフリーハンド範囲指定機能?
    ちょっと想像がつかないのですが、宜しければお教え頂けるとありがたいです。
    できるかどうか判らないのですが、こちらでもちょっと試してみたいことがあるもので…。

    あとGoogle Mapsのダウンロード制限、これは恐らくある速度以上でダウンロードしているIPを一定時間ブロックしているのではないかと思います。
    本来の使い方ですとそれ程一気にダウンロードする必要はないはずですし。
    対策としてはダウンロード速度を落とせばいいと思うのですが、これはまさに諸刃の剣。
    どうしたものでしょうか…。

    • 元データは国土交通省のものです。
      ただ、国土交通省のデータでは海岸線や県境が途切れていて完全には陸と海を塗り分けられなかったので、GIMP を使って県境を適当に描いてしまいました ^^;

      あとはその画像からコマンドに落とす処理だけが残課題として残っていたのですが、
      フリーハンド範囲指定機能を実装する際に、画像からそれなりに最適化された
      (行数の少ない)コマンドを出力するアルゴリズムを考えたので、
      それを今回の地図レシピにも適用したわけです。

      大部分は自動で生成できるスクリプトができているので、ちょっとまとめたら公開しますね。

      今のところ、以下の処理が全自動で処理できます。

      ・国土交通省のデータ → 県境が切れたPNG画像
      ・必要範囲を塗りつぶしたPNG画像 → 各ズームレベルのコマンドを生成

      県境を書き加えて、陸地を塗りつぶす所だけ人の手が必要です。

      ダウンロードに関しては速度を落とすしかないですよね。
      Google 社にもっと攻撃的に出られてサービス停止とかされるのに比べれば、無料地図データを使えるだけまだありがたいです。
      急に必要になったときは別ですが、普段使いであれば、夜仕掛けて
      寝てる間にダウンロードくらいでも十分ですからね。

  2. bucchiさま、いつもお世話になっております。
    この素晴らしいソフトをザウルスで使わせてもらっています。

    Google Mapsのダウンロード制限についてですが、私もダウンロード中に0 byte ファイルが続出しました。
    自分のパソコンがおかしくなったのかと思いましたが、皆さんの予想通り、Google側がIPアドレスではじいていると思います。
    私はイーモバイルの端末を利用して、出先で必要な部分の地図をパソコンでダウンロードしている時にその状態になってしまい、とりあえずリセット、ということで一旦接続を切って再度接続をしなおしたところ、ダウンロード可能になりました。
    その後、何度か同じ状態になった時にも、切断→再接続をしてIPアドレスを変えてやるとダウンロードが可能になっています。

    • yosi様。はじめまして。
      qgmap をお使いいただいているようで、ありがとうございます。

      やはり IP アドレスで制限でしたか。
      モバイル環境では再接続が容易ですが、ADSL や 光 では半固定 IP みたいな所が多そうですから、
      何らかの対応をしないとですね・・・。

      私の家で確認した所、Google Map が見えるようになるまで 1日半 かかりました。
      ちょっと復帰に時間が掛かりすぎなので、真面目に対応しないと
      qgmap も事実上使えない使えないソフトになっちゃいますねぇ。
      うーん。

      ご報告ありがとうございました!

      • どうやらHTTPヘッダの何かでダウンローダを判別していたようです。
        Firefoxと同じリクエストを発行するようにしたらOKでした。
        よくよく考えると、IPマスカレードをしているところではすべてのリクエストはGWから出てくることになるので、ダウンロード速度では制限できないはずなんですよね。
        なお、今出先なので、更新はもう少々お待ち下さい…。

        • 対応できそうということですか!
          それはよかった・・・。
          私も User-Agent とかいじってみたんですが、うまくいかなくて・・。
          さすが tera 様ですね!
          更新楽しみにしています!
          ほんとよかった・・・

  3. bucchiさま はじめましてつんです。
    地図レシピでアドレスが抜けていた箇所がありましたので報告します。
    石川県金沢駅から南部 ズーム3と4
    down_map(“4”, “28784:28839”, “12800:12858”);
    down_map(“3”, “57570:57599”, “25640:25696”);
    重複しているとこもあり。

    秋田県と岩手県一部 ズーム3と4
    down_map(“4:3”, “29114:29306”, “12480:12550”);
    重複しているとこもあり。

    • はじめまして、つん様。

      結構大きい範囲で漏れてるようですね・・・。
      最近すっかりメンテされてないので、時間ができたら見直してみますね。
      以前 Matsu 様にご報告頂いた修正点もありますので。

      ご報告ありがとうございました!

  4. ごぶさたしております。
    お忙しそうで、なにより(なのでしょうか)

    レシピでおかしな部分があったので報告させていただきます。

    栃木県内で、以下のあたりが抜けています(範囲はおおまかなものです)。
    不思議なのは、Zoom2では、ちゃんと入っていることです(おそらく手作業でやられているわけではないと思いますのに)。

    down_map(“6”, “7268:7286”, “3200:3209”);
    down_map(“5”, “14536:14573”, “6400:6421”);
    down_map(“4”, “29071:29148”, “12800:12843”);
    down_map(“3”, “58141:58297”, “25600:25690”);

    とりあえず、ご報告まで。

    • ご無沙汰してます。
      いろいろご報告いただいていたのに返信が遅くなってすいません。

      地図レシピも真面目にメンテしないとダメですね。
      お察しのとおり、ほとんど機械処理で生成しているので、ズームレベルによって抜けがあるのは生成ツールのバグだと思います。
      ちょっと調べてみますね。有難うございました。

コメントを残す

メールアドレスが公開されることはありません。


*