Wget下载URL列表并设置不同的文件路径

时间:2013-04-15 01:37:05

标签: wget

我在这里阅读http://www.thegeekstuff.com/2009/09/the-ultimate-wget-download-guide-with-15-awesome-examples/如果我想下载多个网址,我可以将它们保存在这样的文本文件中

$ cat > download-file-list.txt
URL1
URL2
URL3
URL4

并像这样使用wget

$ wget -i download-file-list.txt

但是假设我希望每个URL都保存在我的驱动器上自己的目录中,如下所示:

URL1 -> Users/Downloads/Tech
URL2 -> Users/Downloads/Fashion
URL3 -> Users/Downloads/Cooking
URL4 -> Users/Downloads/News

我如何做到这一点?是否可以手动为文本文件中的每个URL设置目录,并让wget读取并自动知道保存每个文件的位置?有没有其他方法可以实现我的需要?我正在尝试稍后使用cronjobs设置和自动下载进程。

由于

2 个答案:

答案 0 :(得分:3)

这是一个可以执行此操作的批处理脚本,提供了这样的列表:

$ cat > urllist.txt
URL1 file1
URL2 file2
URL3 file3
URL4 file4

$ while read url file; do 
    wget -c -O "$file" "$url"
done < urllist.txt

URL中不应有任何空格(它们可以用%20表示)但是,文件名中可以​​有空格。

答案 1 :(得分:1)

然后你不能使用那种方法。最好的方法是使用某种格式(可能是“URL目录”)读入文件的bash,perl或python脚本,并将每个url下载到指定的目录。但是你需要在wget之外放置一些聪明才能获得这种行为。