wgetコマンドで使ってみたコマンドのメモ一覧

wgetコマンドで使ってみたコマンドのメモ一覧

 

wgetコマンドで使ってみたコマンドのメモ・一覧です。

wget確認

$ which wget
/usr/bin/wget

$ wget
wget: URLがありません
使い方: wget [オプション]... [URL]...

詳しいオプションは `wget --help' を実行してください。

ヘルプ wget help

$ wget --help
GNU Wget 1.12, 非対話的ネットワーク転送ソフト
使い方: wget [オプション]... [URL]...

長いオプションで不可欠な引数は短いオプションでも不可欠です。

スタートアップ:
 -V, --version バージョン情報を表示して終了する
 -h, --help このヘルプを表示する
 -b, --background スタート後にバックグラウンドに移行する
 -e, --execute=COMMAND `.wgetrc'形式のコマンドを実行する

ログと入力ファイル:
 -o, --output-file=FILE ログを FILE に出力する
 -a, --append-output=FILE メッセージを FILE に追記する
 -d, --debug デバッグ情報を表示する
 -q, --quiet 何も出力しない
 -v, --verbose 冗長な出力をする (デフォルト)
 -nv, --no-verbose 冗長ではなくする
 -i, --input-file=FILE FILE の中に指定された URL をダウンロードする
 -F, --force-html 入力ファイルを HTML として扱う
 -B, --base=URL HTML で入力されたファイル(-i -F)のリンクを
 指定した URL の相対 URL として扱う

ダウンロード:
 -t, --tries=NUMBER リトライ回数の上限を指定 (0 は無制限).
 --retry-connrefused 接続を拒否されてもリトライする
 -O, --output-document=FILE FILE に文書を書きこむ
 -nc, --no-clobber 存在しているファイルをダウンロードで上書きしない
 -c, --continue 部分的にダウンロードしたファイルの続きから始める
 --progress=TYPE 進行表示ゲージの種類を TYPE に指定する
 -N, --timestamping ローカルにあるファイルよりも新しいファイルだけ取得する
 -S, --server-response サーバの応答を表示する
 --spider 何もダウンロードしない
 -T, --timeout=SECONDS 全てのタイムアウトを SECONDS 秒に設定する
 --dns-timeout=SECS DNS 問い合わせのタイムアウトを SECS 秒に設定する
 --connect-timeout=SECS 接続タイムアウトを SECS 秒に設定する
 --read-timeout=SECS 読み込みタイムアウトを SECS 秒に設定する
 -w, --wait=SECONDS ダウンロード毎に SECONDS 秒待つ
 --waitretry=SECONDS リトライ毎に 1〜SECONDS 秒待つ
 --random-wait ダウンロード毎に 0〜2*WAIT 秒待つ
 --no-proxy プロクシを使わない
 -Q, --quota=NUMBER ダウンロードするバイト数の上限を指定する
 --bind-address=ADDRESS ローカルアドレスとして ADDRESS (ホスト名か IP) を使う
 --limit-rate=RATE ダウンロード速度を RATE に制限する
 --no-dns-cache DNS の問い合わせ結果をキャッシュしない
 --restrict-file-names=OS OS が許しているファイル名に制限する
 --ignore-case ファイル名/ディレクトリ名の比較で大文字小文字を無視する
 -4, --inet4-only IPv4 だけを使う
 -6, --inet6-only IPv6 だけを使う
 --prefer-family=FAMILY 指定したファミリ(IPv6, IPv4, none)で最初に接続する
 --user=USER ftp, http のユーザ名を指定する
 --password=PASS ftp, http のパスワードを指定する
 --ask-password パスワードを別途入力する
 --no-iri IRI サポートを使わない
 --local-encoding=ENC 指定した ENC を IRI のローカルエンコーディングにする
 --remote-encoding=ENC 指定した ENC をデフォルトのリモートエンコーディングにする

ディレクトリ:
 -nd, --no-directories ディレクトリを作らない
 -x, --force-directories ディレクトリを強制的に作る
 -nH, --no-host-directories ホスト名のディレクトリを作らない
 --protocol-directories プロトコル名のディレクトリを作る
 -P, --directory-prefix=PREFIX ファイルを PREFIX/ 以下に保存する
 --cut-dirs=NUMBER リモートディレクトリ名の NUMBER 階層分を無視する

HTTP オプション:
 --http-user=USER http ユーザ名として USER を使う
 --http-password=PASS http パスワードとして PASS を使う
 --no-cache サーバがキャッシュしたデータを許可しない
 --default-page=NAME デフォルトのページ名を NAME に変更します
 通常は `index.html' です
 -E, --adjust-extension HTML/CSS 文書は適切な拡張子で保存する
 --ignore-length `Content-Length' ヘッダを無視する
 --header=STRING 送信するヘッダに STRING を追加する
 --max-redirect ページで許可する最大転送回数
 --proxy-user=USER プロクシユーザ名として USER を使う
 --proxy-password=PASS プロクシパスワードとして PASS を使う
 --referer=URL Referer を URL に設定する
 --save-headers HTTP のヘッダをファイルに保存する
 -U, --user-agent=AGENT User-Agent として Wget/VERSION ではなく AGENT を使う
 --no-http-keep-alive HTTP の keep-alive (持続的接続) 機能を使わない
 --no-cookies クッキーを使わない
 --load-cookies=FILE クッキーを FILE から読みこむ
 --save-cookies=FILE クッキーを FILE に保存する
 --keep-session-cookies セッションだけで用いるクッキーを保持する
 --post-data=STRING POST メソッドを用いて STRING を送信する
 --post-file=FILE POST メソッドを用いて FILE の中味を送信する
 --content-disposition Content-Disposition ヘッダがあれば
 ローカルのファイル名として用いる (実験的)
 --auth-no-challenge サーバからのチャレンジを待たずに、
 Basic認証の情報を送信します。

HTTPS (SSL/TLS) オプション:
 --secure-protocol=PR セキュアプロトコルを選択する (auto, SSLv2, SSLv3, TLSv1)
 --no-check-certificate サーバ証明書を検証しない
 --certificate=FILE クライアント証明書として FILE を使う
 --certificate-type=TYPE クライアント証明書の種類を TYPE (PEM, DER) に設定する
 --private-key=FILE 秘密鍵として FILE を使う
 --private-key-type=TYPE 秘密鍵の種類を TYPE (PEM, DER) に設定する
 --ca-certificate=FILE CA 証明書として FILE を使う
 --ca-directory=DIR CA のハッシュリストが保持されているディレクトリを指定する
 --random-file=FILE SSL PRNG の初期化データに使うファイルを指定する
 --egd-file=FILE EGD ソケットとして FILE を使う

FTP オプション:
 --ftp-user=USER ftp ユーザとして USER を使う
 --ftp-password=PASS ftp パスワードとして PASS を使う
 --no-remove-listing `.listing' ファイルを削除しない
 --no-glob FTP ファイル名のグロブを無効にする
 --no-passive-ftp "passive" 転送モードを使わない
 --retr-symlinks 再帰取得中に、シンボリックリンクでリンクされた先のファイルを取得する

再帰ダウンロード:
 -r, --recursive 再帰ダウンロードを行う
 -l, --level=NUMBER 再帰時の階層の最大の深さを NUMBER に設定する (0 で無制限)
 --delete-after ダウンロード終了後、ダウンロードしたファイルを削除する
 -k, --convert-links HTML や CSS 中のリンクをローカルを指すように変更する
 -K, --backup-converted リンク変換前のファイルを .orig として保存する
 -m, --mirror -N -r -l 0 --no-remove-listing の省略形
 -p, --page-requisites HTML を表示するのに必要な全ての画像等も取得する
 --strict-comments HTML 中のコメントの処理を厳密にする

再帰ダウンロード時のフィルタ:
 -A, --accept=LIST ダウンロードする拡張子をコンマ区切りで指定する
 -R, --reject=LIST ダウンロードしない拡張子をコンマ区切りで指定する
 -D, --domains=LIST ダウンロードするドメインをコンマ区切りで指定する
 --exclude-domains=LIST ダウンロードしないドメインをコンマ区切りで指定する
 --follow-ftp HTML 文書中の FTP リンクも取得対象にする
 --follow-tags=LIST 取得対象にするタグ名をコンマ区切りで指定する
 --ignore-tags=LIST 取得対象にしないタグ名をコンマ区切りで指定する
 -H, --span-hosts 再帰中に別のホストもダウンロード対象にする
 -L, --relative 相対リンクだけ取得対象にする
 -I, --include-directories=LIST 取得対象にするディレクトリを指定する
 --trust-server-names use the name specified by the redirection url last component.
 -X, --exclude-directories=LIST 取得対象にしないディレクトリを指定する
 -np, --no-parent 親ディレクトリを取得対象にしない

バグ報告や提案は<bug-wget@gnu.org>へ

wget バージョン確認

$ wget -V
GNU Wget 1.12 built on linux-gnu.

+digest +ipv6 +nls +ntlm +opie +md5/openssl +https -gnutls +openssl
-iri

Wgetrc:
 /etc/wgetrc (system)
ロケール: /usr/share/locale
コンパイル: gcc -DHAVE_CONFIG_H -DSYSTEM_WGETRC="/etc/wgetrc"
 -DLOCALEDIR="/usr/share/locale" -I. -I../lib -O2 -g -pipe -Wall
 -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector
 --param=ssp-buffer-size=4 -m64 -mtune=generic -fno-strict-aliasing
リンク: gcc -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions
 -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic
 -fno-strict-aliasing -Wl,-z,relro -lssl -lcrypto
 /usr/lib64/libssl.so /usr/lib64/libcrypto.so -ldl -lrt ftp-opie.o
 openssl.o http-ntlm.o gen-md5.o ../lib/libgnu.a

Copyright (C) 2009 Free Software Foundation, Inc.
ライセンス GPLv3+: GNU GPL バージョン 3 あるいはそれ以降のバージョン
<http://www.gnu.org/licenses/gpl.html>.
このソフトウェアはフリーソフトウェアです。自由に変更、再配布ができます。
法律が許すかぎり、全くの無保証です。

Hrvoje Niksic <hniksic@xemacs.org> によって書かれました。
現在は Micah Cowan <micah@cowan.name> によってメンテナンスされています。
バグ報告や質問は<bug-wget@gnu.org>へ

wget ダウンロード

指定ページの素材含めてをwgetでダウンロード

$ wget -p http://test.com

指定URLから2階層再帰的に5秒おきにwgetでダウンロード

$ wget -r -l2 -w5 http://test.com

 

以下の書籍でwgetをクローラーとしても使える事を知ったので今回色々試してみました。

ruby_crawler

Comments

No comments yet. Why don’t you start the discussion?

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です