• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:無料配布の郵便番号自動入力cgiのデータ更新)

無料で使える郵便番号自動入力CGIのデータ更新方法

このQ&Aのポイント
  • 無料で利用できるAjaxを使用した郵便番号自動入力のCGIを使用しているが、データの更新方法が分からない。
  • 提供サイトのURLにデータ更新手順が掲載されているが、具体的な手順がわからず困っている。
  • サーバ上でなくてもWindows環境やMac OS Xクライアントでも実行できるようだが、Windowsクライアントでの手順が不明。

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

  • ベストアンサー
  • ralf124c
  • ベストアンサー率52% (232/446)
回答No.2

サイトを見るとたしかに丁寧に書いてあるのですがUNIX環境が前提の操作になっています。 たぶんサーバで操作することが前提なのでしょう。 Windowsで行う場合はPerlがコマンドプロンプト(DOS窓)で実行可能な環境が必要です まずActivePerlをインストールしてください。 http://www.activestate.com/activeperl/downloads からダウンロードできます のちのちサーバ上のPerlとの互換性も考えて5.8系の古いものがお勧めです MSIインストーラ付の物でインストールすると設定が楽です インストールしたらコマンドプロンプトを開いて「perl -v」とでも打ってバージョン番号が帰ってきたら準備OKです 次に郵便番号データ2種を下記の郵便局サイトからブラウザでアクセスしてダウンロードします http://www.post.japanpost.jp/zipcode/dl/kogaki/lzh/ken_all.lzh http://www.post.japanpost.jp/zipcode/dl/jigyosyo/lzh/jigyosyo.lzh 各々のファイルを圧縮解凍ツールで解凍してCSVファイルにし、こちらのajaxzip2を展開したディレクトリ内のサブディレクトリ「work」にそれらを移動します コマンドプロンプトを開いて上記ディレクトリにカレントディレクトリ(作業用ディレクトリ)を移します 例:cd C:\Temp\Download\ajaxzip2\work そこにあるPerlスクリプトを実行すれば、一階層上の「data」ディレクトリに新しいJASONデータが生成されます 上記生成ファイルをサーバにアップロードしておしまい。 P.S. 前回は的外れな回答をしてすいませんでした。 郵便番号検索うんぬんでなくてメールフォームが必要でそれにこれを載せたかったんですね

rie-mama
質問者

お礼

ralf124cさま 具体的にインストール内容を教えていただき、ありがとうございました。 みなさんのおかげで、無事最新郵便番号に更新する事がcgiの動きの中で確認ができました。 ありがとうございました。

その他の回答 (2)

  • shiren2
  • ベストアンサー率47% (139/295)
回答No.3

Ajaxを使うなら、JSONPを使うものが主流です。 郵便番号 JSONP で検索してみてください。 >JsonpZip プレビュー! 住所プルダウンから郵便番号自動入力 http://kawa.at.webry.info/200801/article_14.html <script type="text/javascript" src="http://jsonp-hosting.googlecode.com/svn/trunk/jsonpzip/lib/jsonpzip.js" charset="UTF-8"></script> <form> 郵便番号:<input type="text" name="zip3" rel="jsonpzip[zip7]" maxlength="8" size="9"><br> 住所:<input type="text" name="addr" rel="jsonpzip[addr]" size="60"> </form> >ajaxzip3 http://code.google.com/p/ajaxzip3/ <script src="http://ajaxzip3.googlecode.com/svn/trunk/ajaxzip3/ajaxzip3.js" charset="UTF-8"></script> <form> 郵便番号:<input type="text" name="zip11" size="10" maxlength="8" onKeyUp="AjaxZip3.zip2addr(this,'','addr11','addr11');"><br /> 住所:<input type="text" name="addr11" size="60"> </form>

参考URL:
http://www.google.co.jp/search?hl=ja&q=jsonp+郵便番号
rie-mama
質問者

お礼

shiren2さま フォームソースを含み、詳しく教えていただきましてありがとうございました。 参考にさせていただきます。 皆さんの温かいご協力によって、解決することができました。 感謝しています。 ありがとうございました。

  • g_liar
  • ベストアンサー率52% (382/728)
回答No.1

郵便番号辞書のアップデート手順には、これ以上具体的にはできないほど具体的に書いてありますよ? 手順の中の$で始まる行が自分が入力するコマンドです。 ただし、サーバ上で実行することを前提に書かれていますので、Windowsマシンで実行するにはひと工夫が必要です。 以下、実際に試したわけではありませんので参考としてお読みください。 (1)ActivePerlをダウンロード&インストールしWindowsでperlが実行できるようにする。 (2)1つのフォルダ内にdataとworkの2つのフォルダを作る。 (3)日本郵便のサイトからken_all.lzh と jigyosyo.lzhをダウンロードして解凍し、ken_all.csv と jigyosyo.csvを取り出す。 (4)ken_all.csv と jigyosyo.csvを(2)で作ったworkフォルダに入れる。 (5)パッケージに含まれるcsv2jsonzip.plをworkフォルダに入れる。 (6)コマンドプロンプトで以下を実行。   cd (2)で作ったworkフォルダ   perl csv2jsonzip.pl ken_all.csv jigyosyo.csv (7)dataフォルダにzip-***.json(***部分は数字)のファイルが作られるので、これを全部サーバのdataフォルダにアップロードする。

rie-mama
質問者

お礼

g_liarサマ ありがとうございました。 perlを動かす為に必要な ActivePerlをダウンロード&インストールという手順がわかりませんでした。 ダウンロードすることにより最終目標である最新郵便番号に更新する事ができました。 ありがとうございました。

関連するQ&A