次のようにしてサイト全体をダウンロードしようとしていますwget
:
wget -r http://whatever/
wget -m http://whatever/
しかし、ダウンロードされるのはテキストのあるページだけで、画像はダウンロードされません。テキストと画像のあるページをダウンロードするにはどうすればいいでしょうか? 何が足りないのでしょうか?
答え1
使用する必要があるコマンドwget
は、以下で説明するように、はるかに長くなります。そのため、 などのファイルにコミットしwholesite.sh
、実行可能にして実行することをお勧めします。これにより、URL のディレクトリと、画像、js、css などのサイトのアセットのサブディレクトリが作成されます。
wget \
--recursive \
--level 5 \
--no-clobber \
--page-requisites \
--adjust-extension \
--span-hosts \
--convert-links \
--restrict-file-names=windows \
--domains yoursite.com \
--no-parent \
yoursite.com
説明
--recursive
これは、取得するサイトのアセットのサブディレクトリの数を指定します (画像などのアセットは、多くの場合、サイトのサブディレクトリに保存されるため)。アセットを検索するデフォルトの最大深度は、5 つのサブディレクトリです。これは、level
すぐ下のフラグを使用して変更できます。
--level 5
5 つのサブディレクトリでアセットを検索します。ターゲット サイトが大きい場合や小さい場合は、この値を増やすか減らすことをお勧めします。
--no-clobber
既存のファイルを上書きしないでください。
--page-requisites
wget
指定されたHTMLページを適切に表示するために必要なすべてのファイルをダウンロードします。これには以下が含まれます 。画像、CSS、JS など。
--adjust-extension
.html、.css、その他のアセットの適切なファイル拡張子を保持します。
--span-hosts
オフサイトからの必要な資産も含めます。
--convert-links
サイト リンクを更新して、ローカル マシンのサブディレクトリ内のファイルとして機能させます (ローカルで表示する場合)。
--restrict-file-names=windows
このコマンドを Windows システムで使用する場合は、ファイル名を変更して Windows でも機能するようにします。
--domains yoursite.com
このドメイン外のリンクをたどらないでください。
--no-parent
渡したディレクトリ外のリンクをたどらないでください。
yoursite.com
# ダウンロードするURL