閉じる
  1. iPhoneやiPadで誤ってアプリケーションを購入した場合の返金方法…
閉じる
閉じる
  1. vimでペースト・貼り付けたら余計なインデントが混ざる(解決)
  2. ヤフーショップが個人出店者をヤフオクへ強制移店させるそうだ(期限は来年…
  3. トラックパッドのピンチイン、アウトで拡大縮小出来ない場合の対処法
  4. 海外のGoogleで検索する方法とURLを紹介します
  5. VMware上の仮想OSでキーボード、マウスが効かない(解決)
  6. サイトをまるごとダウンロードする方法(wgetコマンド編)
  7. 最新OS「Mojave」の新機能。デスクトップアイコンをまとめて整理す…
  8. WordPressが遅い!ページ表示を高速化するプラグインWP-Opt…
  9. PythonでScrapyインストール時にエラー発生。解決!
  10. Excelで簡単に日付と時刻を入力する方法(ショートカット活用)
閉じる

ALPHACAST|アルファキャスト

サイトをまるごとダウンロードする方法(wgetコマンド編)

wgetのコマンド紹介

サイトをローカルにダウンロードする方法(wgetコマンド編)

コマンドラインからサイトをまるごとダウンロードする方法です。

使用するコマンド:wget

意外と知られていませんが、UNIX系OS(Ubuntu, CentOS、Linux)にはサイトをまるごとダウンロード出来るwgetコマンドが用意されています。

今回はwgetコマンドを使った簡単な実例と、実用的なオプションをご紹介します。

前準備(wgetコマンドの存在を確認)

コマンドラインから以下を実行してみて下さい。

$ wget -V

バージョン情報が表示されたらコマンドは準備済みです。
例:$ GNU Wget 1.19.4 built on darwin17.3.0.
もし

$ command not found

と表示されたらコマンドがインストールされていません。
以下のコマンドでインストールを行いましょう。

 

はじめてのwget

wgetコマンドは、HTTPアクセスをしてコンテンツをファイルに保存するコマンドです。
再帰的にたくさんのファイルをダウンロードすることができるのでバックアップにも便利です。

実践:yahooのトップ画面をダウンロードしてみよう

Yahooのトップページをダウンロードして見ましょう。
コマンドは以下です。

$ wget yahoo.co.jp

実践:実行結果

あっさりとヤフーのトップページがindex.htmlファイルとして実行フォルダに取得、保存できました。
ブラウザに無理矢理表示してみましょう。
wgetの取得結果

無事ダウンロード出来ましたね。
ところで、本家のYahooトップページと比べると画像やリンクなど全体の情報が少ないですね。
この点は深く今回は説明いたしませんが、サイトにアクセスしたエージェント(OSやブラウザなど)がwgetコマンドだったため、と頭の片隅に置いておいて下さい。iPhoneでYahooにアクセスしたらTOP画面がPCとは異なりますよね?それと似たようなことが起こっています。

wgetコマンドオプション

wgetは強力なオプションを備えています。
上手に活用する事で、欲しいサイトの情報を効率的にダウンロードする事が出来ます。
以下に私がオススメする代表的なオプションをご紹介します。

wgetの秘めたる力を引き出すオプションたち

-r 再帰的なダウンロードを実行。ドメイン名のディレクトリを作成してダウンロードしたファイルを保存する
-l数字 リンクをたどる最大回数を指定。-l1 は指定したURLとそのリンク先をダウンロード。-r も合わせて必要
-w数字 ダウンロードの間隔を秒数で指定
-p そのHTMLページに含まれる画像やCSS、JavaScriptなどもダウンロードする。 その1ページだけでよければ、-r を付けなくてもよい
-k リンクや画像への参照などを、ローカルでも開けるように絶対パスから相対パスに書き換える
-A 拡張子 ダウンロードするファイルの拡張子を指定。コンマ区切りで複数指定できる。 再帰的にリンクをたどるためにHTMLにもアクセスをするがファイルで保存するのは指定の拡張子のみになる。 例: -A jpg,png,gif

 

オプションを指定した実践例

サイトが参照されている画像ファイルやその他ファイル(css、jsなど)もまとめてダウンロードする方法

ウェブページのHTMLと参照されている画像ファイルやCSS、JSなどもまとめてダウンロードするには
オプション -p を使います。参照されている画像やCSSやJSも合わせてまるごとダウンロードしてくれます。

$ wget -p http://www.hogehoge.com/

サイトを丸ごとダウンロードする方法

サイトのリンクを自動的にたどって、リンク先もどんどんダウンロードするには
オプション -r を指定します。また、リンクをたどる深さ(深度)を オプション -l で指定します。
深度がわからないサイトを無限にダウンロードするのは無謀ですし、サイト管理者、閲覧者に迷惑が掛かります。
深度の指定は必ず行うことと、無理の無い設定を心がけて下さい。

以下はリンク3回までたどり、ダウンロードする。
リンクを3回踏むということは第4階層のページまでダウンロードする事になります。

$ wget -r -l3 http://www.hogehoge.com/

ダウンロード時のモラル

サイトのダウンロードには大きな負荷がかかります。
サイト運営者や閲覧者にご迷惑が掛からないよう以下のオプションは絶対に付けて下さい。

絶対につけよう! -w オプション!!!

-w オプションは、再帰的なダウンロードの途中一度一度にインターバルを設けるオプションです。
-w1 は一秒、-w2 は2秒のインターバルを設けてダウンロードされます。

模範的コマンド実行例

$ wget -r -l3 -w2 http://www.hogehoge.com/

ダウンロード速度は遅くなりますが、回線もサーバリソースもみんなの共有物です。
是非譲り合いの精神で素敵なwgetライフをお送り下さい。

最後までご覧頂きありがとうございました。

特定サイトに集中的にアクセスすると不正アクセスとみなされ、アカウントロックやIP遮断、場合により営業妨害などで訴訟を起こされる可能性もあります。アカウントロックやIP遮断でも復活はおそらく望めません。細心の注意のもと行って下さい。

 

愛のおひねり




育毛剤

関連記事

  1. vimでペースト・貼り付けたら余計なインデントが混ざる(解決)

    vimでペースト・貼り付けたら余計なインデントが混ざる(解決)

  2. MACからiTermを使ってエックスサーバにSSH接続する方法

おすすめ記事

  1. iPhoneやiPadで誤ってアプリケーションを購入した場合の返金方法

コメント

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

人気の記事

  1. vimでペースト・貼り付けたら余計なインデントが混ざる(解決)
    vimでペースト・貼り付けたら余計なインデントが混ざる(解決)コーディング中、ソース範囲を選択し…
  2. ヤフーショッピング
    ヤフーショップから個人出店者が消滅!移行期限は来年6月末!なんだこれは。Yahoo!ショッピ…
  3. ピンチイン、ピンチアウトが効かない
    MACのトラックパッドで「ピンチイン、アウト」効かない場合の対処法MacBook Proのトラッ…
  4. Google検索方法
    海外のGoogleで検索する方法をご紹介海外のGoogle結果を検索したいことってありますよね。…
  5. vmwareでキーボードが効かない
    VMwareで起動したOSへキーボード、マウスが反応しない環境 ツール:VMware…
  6. wgetのコマンド紹介
    サイトをローカルにダウンロードする方法(wgetコマンド編)コマンドラインからサイトをまるごとダ…

漠速!WordPress特化型サーバ登場

愛のおひねり

子供の頃、ファミコンより「MSX」に飛びついたマイノリティー。

当時、雑誌に掲載されていたソース(BASIC言語)を打ち込み無料でゲームを楽しみ悦に浸る。

某大手電機メーカーの情報システム部門勤務を経て独立。

現在はIT広告媒体全般を請け負う便利屋。

趣味:
ビリヤード、フルート、カラオケ、Amazonプライムビデオ観賞