$ wget -r -np -nH --cut-dirs=2 -p -k "http://www.example.com/1" -O test.html
Cannot specify both -k and -O if multiple URLs are given, or in combination
with -p or -r. See the manual for details.
Usage: wget [OPTION]... [URL]...
この問題を解決する方法を知りたいです。
実際の問題では、リストURLを次のテキストファイルに保存します。
http://www.example.com/1
http://www.example.com/2
http://www.example.com/3
ウェブページを置き換えるために必要なファイルとともに各ウェブページをダウンロードしたいと思います。
デフォルトでは、ダウンロードした各ファイルには、以前index.html
にダウンロードしたWebページを上書きするように名前が付けられています。そのため、ダウンロードしたファイルの名前をダウンロード順序を示す数字に変更しようとしました。
i=0
for url in $(cat ../htmls);
do
wget -r -np -nH --cut-dirs=1 -p -k "$url" -O $(printf %04d $i).html;
i=$((i+1))
done
この時点で初期エラーが発生しました。
答え1
index.html
Webページのさまざまなリンクがこのファイルに依存しているため、このファイルが必要です。各Webページを独自のディレクトリに保存します。
while read url; do
mkdir "$url";
cd "$url"
wget -r -np -nH --cut-dirs=1 -p -k "$url"
cd ../
done
wget
これは既にデフォルトで行われているため、次を使用してください。スティーブンの方法代わりに。
答え2
wget
withのデフォルトの動作は、-r
ダウンロードしたファイルをURLと一致するディレクトリに保存することですので、次のようにできます。
wget -r -np -p -i myurls
(myurls
ダウンロードするURLを含むファイルはどこにありますか?)
結果として生成された大容量ディレクトリは最も満足のいくものではありませんが、ダウンロードしたファイルを表示するために必要なものをすべて上書きすることはありません。