如何使用wget

 

wget下载资源

好比说要下载好的在线资源,能够用wget命令:css

$ wget -r -p -k -np http://tengine.taobao.org/book/ 
$ wget -r -p -k -np http://light4.github.io/Linux-C/index.html

下载git-pro中文版时,遇到错误: Connecting to |216.34.181.97|:80... failed: Connection refused.。多是G F W的做用,所以须要使用代理,只须要设置:html

$ export http_proxy='127.0.0.1:8087' #GAE代理

重试则能够下载成功,可是编码错误:jquery

zsh➜ $ wget -r -p -k -np http://git-scm.com/book/zh/起步 
--2013-04-08 14:21:43-- http://git-scm.com/book/zh/%E8%B5%B7%E6%AD%A5 
正在链接 127.0.0.1:8087... 已链接。 
已发出 Proxy 请求,正在等待回应... 200 
长度: 17487 (17K) [text/html] 
....

加上--restrict-file-names=nocontrol参数就能够了。git

另外在下载learn.jquery.com完成后,在首页打开event时,连接转换为file:///home/zhaofei/Documents/learn.jquery.com/index.html?page_id=13, 实际上,浏览器在载入文件时忽略连接中的查询字串(也就是?page_id=13),所以打开的仍然是index.html。这时候加上--restrict-file-names=windows,转换为本地链接时将?转换为其余字符。github

wget 帮助手册

man wgetwindows

wget是免费的网页下载工具,支持HTTP、HTTPS、FTP协议,同时还支持http代理。wget支持递归抓取页面,能够爬取HTML、XHTML、CSS,同时转换页面内连接地址,容许在没网的状况下浏览网站,所以是备份网站的强大工具。 wget遵照Robot Exclusion Standard (/robots.txt)。api

上面各个选项含义:浏览器

  • -r(–recursive): 递归下载页面,默认深度为5
  • -p(–page-requisites): 下载页面中的全部资源,包括图片,声音,css等。
  • -k(–convert-links): 下载完成后,转换连接地址,方便本地浏览。
  • -np(–no-parent): 递归下载只往下搜索连接,不会下载父目录页面。
  • –restrict-file-names=nocontrol: 设置转换连接地址时须要转换的字符集。默认状况下,wget转换系统文件名不容许的字符和不可显示的字符。值能够为unix, windows, nocontrol, ascii, lowercase, and uppercase.

Mac 下能够使用SiteSucker备份网站,SiteSucker简单易用同时又很强大,setting里面有许多选项能够设置,好比不下载指定文件类型等。工具

参考

Nginx 开发从入门到精通
How to Fix wget Connection Refused Error when I’m behind a Proxy
解决wget下载文件名乱码的一些方法
Escaping query strings with wget –mirror网站

相关文章
相关标签/搜索