次のページ
前のページ
目次へ
Wget HOWTO
Yoshio Shimamura <yoshios@green.ocn.ne.jp>
v1.0, 29 July 2000
この文書は、WEB ロボット WGET についての HOWTO です。
この文書の最新版は http://hp.vector.co.jp/authors/VA004572/index.html
から入手可能です。
- 1 概要
- 2 プログラムの入手
- 3 インストール
- 4 使い方
- 5 ユーザ認証が必要なサーバの場合
- 6 再帰的収集
- 7 proxyがある場合
- 8 スタートアップファイル
- 9 対ロボット制御ファイル
- 10 その他
wgetとは、指定したホームページの情報を自動的に取ってくるプログラムで、一般にロボットと呼ばれているものです。
ブラウザから、GUIを取り除き、あらかじめ幾つものURLを設定できるものと考えると分かりやすいでしょう。
wgetプログラムは、RING Serverなどから入手できます。
wgetのインストールは、ダウンロードしたファイルを/usr/local/srcに置いたとすると、次のように行います。
# cd /usr/local/src
# gzip -cd wget-1.5.3.tar.gz | tar xvf -
# cd wget-1.5.3
# ./configure
# make
# make install
wgetのコマンドは、次のように引数を与えて実行する。
command format
wget [option] URL1 [URL2 URL3 URL4 ... ]
wgetはそれを実行したディレクトリに指定したURLのファイルが取り込まれる。次の例は、rimnetというディレクトリにhttp://www.rim.or.jp/index.htmlがコピーされる。
sample
$ cd rimnet
$ wget http://www.rim.or.jp/
ユーザ認証が必要なサーバの場合は、次のように、ユーザ名とパスワードを付加する。
command format
wget PROTOCOL://USER:PASSWORD@HOST(:PORT)/
or
wget --http-user=hoge --http-passwd=fugafuga URL
例えば、www.gehogeho.comのポート8080で提供されるサービスのユーザがhogeでパスワードがfugafugaの場合は、次のようにする。
sample
wget http://hoge:fugafuga@www.gehogeho.com:8080/index.html
再帰収集とは、指定ファイルの中にリンク情報があった場合は、そのリンク先もコピーするということである。
再帰収集は、"-r"オプションまたは、"--recursive"オプションを用いる。通常は"-l"オプションまたは、"--level="オプションでネストの深さを指定する。
次の例は、www.foo.or.jpを再帰レベル10で実行する。
sample
wget -r -l 10 http://www.foo.or.jp/index.html
上記のように実行すると、wgetを実行したディレクトリにwww.foo.or.jpというディレクトリが作成され、そのディレクトリ以下に、URL階層構造に従って、ドキュメントツリーがコピーされる。
また、www.foo.or.jp以外のサーバへのリンクを持っていた場合には、そのリンク先のドキュメントもコピーされる。その場合、wgetを実行したディレクトリにそのサーバー名に一致するようなディレクトリが作成され、その中にリソースがコピーされる。
異なるサイトへのリンクを無視したい場合は、次のように"-D""--domain"オプションを使用する。
sample
wget -r -l 10 -D www.foo.or.jp http://www.foo.or.jp/index.html
wgetでは、http_proxy環境変数でproxyサーバを指定することによって、proxyを介したアクセスが可能となる。
環境変数の指定
$ http_proxy=gw1
$ export http_proxy
wgetへの動作指定は、コマンドラインから直接与える方法以外に、スタートアップファイルというものに事前に記述しておくことができる。
スタートアップファイルは、wgetインストール時に/usr/local/etc/wgetrcに作成されている。
スタートアップファイルの指定は、環境変数WGETRCで指定する。
環境変数の指定
$ WGETRC=$HOME/wgetrc
$ export WGETRC
環境変数WGETRCが設定されていない場合は、ユーザーホームディレクトリの.wgetrcファイルがスタートアップファイルとして使用される。
wgetの使い方とは、直接関係ないが、wgetを使われる側からみると、サーバに過度な負荷(もちろんネットワーク上のトラフィックにも負荷がかかるが)を掛けられる恐れがあることになる。
ロボットが引き起こす負荷からサーバを守る場合には、ドキュメントルート直下にrobots.txtというファイルを作成してロボットを制御することができる。
ただし、全てのロボットを制御できる訳ではない。
制御ファイルの例
# for wget
User-agent:wget
Disallow:
# for httpdown
User-agent:httpdown
Disallow:/pub
# for all of robots
User-agent:*
Disallow:/hogehoge
Disallow:/cgi-bin
Disallow:/images
wgetに関する詳しい情報は、次のサイトを参照。
次のページ
前のページ
目次へ