我使用以下命令在win7中使用wget下载包含所有图像和js的单个网页:
wget -E -H -k -K -p -e robots=off -P /Downloads/ http://www.vodafone.de/privat/tarife/red-smartphone-tarife.html
它正在根据需要下载html,但是当我尝试传递一个包含3个url列表的文本文件进行下载时,它没有给出任何输出,下面是我正在使用的命令:
wget -E -H -k -K -p -e robots=off -P /Downloads/ -i ./list.txt -B 'http://'
我也尝试了这个:
wget -E -H -k -K -p -e robots=off -P /Downloads/ -i ./list.txt
此文本文件的前缀为http://
list.txt
包含我需要使用单个命令下载的3个网址的列表。请帮我解决这个问题。
答案 0 :(得分:35)
来自man wget
2调用
默认情况下,Wget非常易于调用。基本语法是:
wget [option] ... [URL] ...
所以,只需使用多个网址
wget URL1 URL2
或使用评论中的链接
$ cat list.txt
http://www.vodafone.de/privat/tarife/red-smartphone-tarife.html
http://www.verizonwireless.com/smartphones-2.shtml
http://www.att.com/shop/wireless/devices/smartphones.html
和您的命令行
wget -E -H -k -K -p -e robots=off -P /Downloads/ -i ./list.txt
按预期工作。
答案 1 :(得分:12)
首先使用您需要下载的URL创建一个文本文件。 例如:download.txt
download.txt
如下:
http://www.google.com
http://www.yahoo.com
然后使用命令wget -i download.txt
下载文件。您可以在文本文件中添加许多URL。
答案 2 :(得分:0)
学徒版:
for x in {'url1','url2'}; do wget $x; done
您可以将其视为单个wget url命令的优点
答案 3 :(得分:0)
如果您的网址列表像这样在多行上分开:
http://example.com/a
http://example.com/b
http://example.com/c
但是您不想创建文件并将wget指向它,可以执行以下操作:
wget -i - <<< 'http://example.com/a
http://example.com/b
http://example.com/c'