相模原・ヤビツ峠(時系列の前記事)
(時系列の次記事)東京からバンコクへ

wgetの使い方 - Webを丸ごと保存し、地域資料として持ち運ぶ方法 -

2004-05-23
トピック:GNU: Wget

Windows版wgetを入手するのは Wget for Windows を開き、「Complete package, except sources」の右にあるSetupをクリックします。インストーラーになっていますので以前の記事のように自分でコピーする必要はありません。インストール先にパスを通した方が使いやすいでしょう。システムの環境設定からパスを追加します。(パス設定の詳細は割愛)

Macの場合はHomebrewを使ってインストールできます。Homebrewはリンク先の「Install Homebrew」に書いてあるコマンドを実行します。その後、wgetは以下でインストールできます。

brew install wget

以前の説明だと別ファイルにURLの一覧を作成するように書いてありますが、単純にそのURLだけダウンロードしたい時は以下のコマンドで十分です。

wget -r -np -m -k https://www.hoghog.com/

Macでコマンド化したければ以下の内容を例えば wget_url.command などのファイル名で保存し、ターミナルから chmod 755 wget_url.command などとして実行パーミッションを付けます。実行には wget_url https://www.hoghog.com/ などとします。

#! /bin/bash
wget -r -np -m -k $1

 

<以上、2018/1/28追加>

 

 

<以下の情報は2004年当時のものです>

小型ノートパソコンを持って旅に出る場合、ホームページをHDDに保存して丸ごと持っていけば、ネットに繋がなくとも現地で必要な情報を閲覧することができます。 海外等で回線が細い場合は特に有効です。 市販ソフトでいろいろ同じようなソフトが出ているのですが、昔からUNIXの世界にある wget というソフトを使えば同じことが無料でできます。 尚、このページでは、Windows のみを対象とします。

 

1.wgetを入手する

wgetのオフィシャルページ(英語) を開き、「Downloading GNU wget」の項を探します。
英文の意味は以下の通り。(意訳)

Downloading GNU wget

The main distribution point for Wget is the GNU software archive. Please choose a mirror site close to you. The master directory is http://ftp.gnu.org/pub/gnu/wget/.

Microsoft Windows binaries are available from SunSITE FTP server at ftp://sunsite.dk/projects/wget/windows/ or http://space.tin.it/computer/hherold/ and have been kindly provided by.

An MS-DOS binary designed to be used under plain DOS with a packet driver has been made available by Doug Kaufman. It is available from http://www.rahul.net/dkaufman/.

GNU wgetのダウンロード

Wgetの一次配布先はGNUソフトウェア・アーカイブである http://ftp.gnu.org/pub/gnu/wget/ となっておりますが、負荷分散の為にもミラーサイトをご利用下さい。ミラーサイトはhttp://www.gnu.org/order/ftp.htmlです。

マイクロソフト・ウィンドウズ用の実行ファイルは、SunSITE FTPサーバの ftp://sunsite.dk/projects/wget/windows/ から取得可能です。 或いは、Heiko Heroldさんのご好意により http://space.tin.it/computer/hherold/ からも別バージョンが取得可能です。

純粋なMS-DOS以下で動作するバイナリはDoug Kaufmanさんによって http://www.rahul.net/dkaufman/ に提供されております。

これに従い、ftp://sunsite.dk/projects/wget/windows/から日付の一番新しいもの、例えばwget20040408b.zip を取得します。 ここでは、ファイル名が 「wget + 日付 + 'b' + '.zip'」 となっているものを選びます。最後の s とか b は、sがソースで b がバイナリ(実行ファイル)です。実行するにはbだけでOKです。又、この他にも ssllibs097c.zip が必要のようです。合わせて取得して下さい。

ここで取得したファイル一覧:


2.インストールする

取得したファイルを展開します。展開にはそれ用のソフトが必要ですが、Lhasaあたりが定番だと思います。

wget20040408b.zipを展開すると出てくるファイルのうち、以下をWindowsフォルダに移動させます。人によってフォルダ名が "Windows" だったり "WinNT" だったりしますが、どちらでも同じです。

wget.exe
wget.hlp
wget.html

ssllibs097c.zipを展開すると出てくる以下のファイルの全てを Windowsフォルダ下にある "System32" フォルダに移動させます。

libeay32.dll
ssleay32.dll

ここでは、GUIではなくCUI(キャラクタユーザインターフェース)のソフトですので、Program Files ではなく Windowsフォルダにインストールしています。

コマンドプロンプトを開き、そこで wget [リターン] と打ち込んで以下のような画面が出ればインストール成功です。

尚、 wget -h とすると全オプションが表示されます。

 

3.使い方

いろいろと使い方はあるのですが、以下の使い方で統一します。

  1. URLはテキストファイルに書く。
  2. バッチファイルをあらかじめ作っておき、テキストファイル中のURLを変えるだけで様々なホームページを取得できるようにする。

 

上の方針に従い、作業を行います。

    1. Web保存用のフォルダを作る。

      ここでは、C:\Web とします。

    2. バッチファイルを作る。

      C:\Webにテキストファイルを新規作成し、 wget実行.bat という名前にファイル名変更します。

    3. バッチファイルをメモ帳などで開き、以下の内容に書き換えます。
      @echo off
      wget -r -np -m -k -i urls.txt
      cd
      pause

      この意味としては以下となります。
      1. 再起的取得する
      2. 上のURLは辿らない
      3. ミラーリング処理(同じであれば2度は取得しない)
      4. 絶対URLを相対URLに変換する(ローカルマシンで閲覧可能にするため) (重要)

    4. URL記載用ファイルを作る

      C:\Webにテキストファイルを新規作成し、urls.txt という名前にファイル名変更します。 そして、このファイルに URL を記載します。 1行に1URLです。 次からはこのファイルを書き換えるだけで良くなります。

    5. wget実行.bat をダブルクリックする。

      Web取得が実行されます。

 

4.補足:proxy設定について

上記の説明は「proxyが必要ない場合」の説明です。
proxyが必要な環境では以下の設定を行います。(proxyが必要かどうかはIEの設定を確認するか、或いは、ネットワークの管理者に聞いてください。)

あらかじめ調べておくこと:

  1. proxyサーバのホスト名とポート番号
    例: ホスト名が hoghog.example.com ポート番号が 8080

行うこと:

  1. 「.wgetrc」ファイルを作る。(作り方は以下に記載。)
  2. 1で作ったファイルを wget.exe と同じディレクトリ(上記の説明ではWindowsフォルダに置きました)に配置する。




「.wgetrc」は以下の方法に従って作って下さい。

  1. スタートメニューから「コマンドプロンプト」を開く
  2. 1で開いたコマンドプロンプトから以下の文字を打ち込み、リターンを押す。
    echo xxx > c:\.wgetrc
    すると、ファイル c:\.wgetrc が作成されます。
  3. 2で作成した c:\.wgetrc をテキストエディタ(メモ帳)で開く。
    補足:メモ帳で開く場合、「ファイルの種類」を「すべてのファイル」 にすると「開く」のダイアログでファイルが表示されます。メモ帳を開いた後、ファイルをドラッグ&ドロップしても開けます。
  4. 3で開くと、メモ帳に「xxx」と内容が記載されていると思いますが、これは消して、以下の内容に置き換えます。
    http_proxy=hoghog.example.com:8080
    これは、ホスト名が hoghog.example.com ポート番号が 8080 の場合です。それぞれの環境に合わせて書き換えて下さい。

この後、上に書きましたように、 .wgetrc ファイルを、wget.exe と同じディレクトリに移動させることによりproxy設定が有効になります。

補足: 「.wgetrc」は先頭に「.」(ドット)があるため、マウス右クリックの新規作成から「新規テキスト」を行った後に名前の変更を行う方法では怒られるため、ここでは間違いの少ない方法を紹介しています。

以上。

2004/05/23 記
2006/06/15 proxy設定追記

■リンク

a Windows で wget を使う方法
b UNIXの部屋 検索結果 - wget
c wget の使い方
d wgetのオフィシャルページ(英語)

 

メモ:

どうも、ジオシティは自動巡回ソフトと相性が悪いみたいです。

相模原・ヤビツ峠(時系列の前記事)
(時系列の次記事)東京からバンコクへ
トピック:GNU: Wget