wget
wgetはコマンドラインで利用できる高機能なダウンローダーです。ソフトウェアのアーカイブをダウンロードするときなどにも用いられます。
wget http://example.com/file.zip
とすると、example.comからfile.zipをダウンロードしてカレントディレクトリに保存することが可能です。HTTPのほか、ftpも利用可能です。
vagrant利用の場合
vagrantで centos/7 のboxを利用している場合、初期状態ではwgetがインストールされていません。
sudo yum -y install wget
を利用してwgetをインストールする必要があります。
wgetのオプション
-i
-iオプションを利用すると、ダウンロードurlを列挙したテキストファイルを読み込むことが可能です。
wget -i list.txt
とすると、list.txtに列挙されたurlから連続でファイルをダウンロードします。
-r
-rオプションを利用するとhtmlファイル内のリンクに対して再帰的にダウンロードを行うことが可能です。さらに親ディレクトリからはダウンロードを行わない-npオプションと組み合わせて
wget -r -np http://example.com/images/
となどとしてimagesフォルダの内容をまとめてダウンロードすることなども可能です。
-lオプションでダウンロードの階層の深さを設定できます。
wget -r -l2 http://example.com/
とすると、2階層までリンクを辿ります。
-O
-Oオプションを利用すると任意の保存先にファイルを保存することが可能です。
wget -O test/test.zip http://example.com/file.zip
とするとfile.zipをtestディレクトリのtest.zipというファイルに保存することができます。
-P
-Pオプションを利用すると保存先のディレクトリを指定することが可能です。
wget -P ./test http://example.com/file.zip
とすると、testディレクトリにfile.zipを保存することができます。
-w --wait
ダウンロードの間隔を秒数で指定します。
--random-wait
ダウンロードの間隔を -w(--wait) で指定した秒数の0.5倍から1.5倍の間でランダムにします。
例えば
wget -r -l2 -w 1 --random-wait http://example.com/
とすると、0.5秒から1.5秒までのランダムな間隔をあけて、2階層までリンクをたどることになります。
注意点
wgetを利用すると簡単に大量のファイルをダウンロードすることが可能ですが、サーバーに負荷をかける可能性があるため十分に注意して利用しましょう。最悪の場合、サイトの管理者からIPアドレスをブロックされたりすることにもつながりかねません。