1.网站下载:
wget是一个用于文件下载的命令行工具,可以下载网页和远程文件
例如:wget URL
wget https://zhidao.baidu.com/question/1818975931865141188.html
(1)可以指定从多个URL处进行下载:
wget URL1 URL2 URL3...
(2)可以使用wget下载FTP服务器中的文件
(3)wget命令参数说明:
-O:指定输出文件名,如果存在同名文件会先将该同名文件清空再将下载文件写入
-o:指定一个日志文件,不必将日志信息打印到stdout
wget https://zhidao.baidu.com/question/1818975931865141188.html -O myweb.html -o weblog //运行该命令终端不会输出任何东西
(3)由于不稳定的Internet连接,下载可能会被迫中断,可以将重试次数做为命令参数,这样一旦中断下载,wget可以在放弃下载之前进行多次尝试
wget -t 5 URL
(4)下载限速:限定下载任务能够占用的最大带宽
wget --limit-rate 20k http://example.com/file.iso
(5)指定最大下载配额:配额一旦用完,下载随之停止;避免无意中占用过多的磁盘空间(这里指定下载100M)
wget -Q 100m http://example.com/file1 http://example.com/file2
(6)断点续传:wget进行的下载在未完成之前被中断,可以利用选项-c从断点开始继续下载
wget -c URL
(7)用cURL下载:curl并不将下载数据写入文件,而是写入标准输出,所以我们必须用重定向操作符把输出重定向到指定文件中
curl https://zhidao.baidu.com/question/1818975931865141188.html > testweb.html
(8)复制或者镜像整个网站:wget有一个选项可以像爬虫一样以递归的方式收集网页上的所有URL链接,并逐个下载
wget --mirror http://192.168.23.135/
或者使用如下方法镜像整个网站:
wget -r -N -l 10 http://192.168.23.135/
-r:递归遍历网页
-N:允许对文件使用时间戳
-l:指定页面层级,wget只会向下遍历指定的页面级数
(9)访问需要认证的HTTP或FTP页面:
--user 和 --password 提供认证信息
wget --user username --password pass ftp://192.168.23.21/
(10)以格式化纯文本形式下载网页:用 lynx 命令的 -dump 选项将网页以ASCII字符的形式下载到文本文件中
lynx -dump http://www.runoob.com/linux/linux-shell-io-redirections.html > webpages_as_text.txt
这个命令会将所有的超链接(<a href="link">)作为文本输出到页脚列在References标题下