用wget下载网站,实现离线浏览

想下一些LSF的文档,windows下的离线浏览有teleport等软件可以选择,Linux下面的类似的离线浏览的软件就更多了。

本来想看看能不能用curl来实现整个网站下载,后来发现curl没有网站下载这个功能。Linux下面除了curl外另一个强大的软件就是wget。

发现wget果然强大,有网站下载这个功能,而且还可以控制网站下载的方式,下面就是wget进行网站下载的命令:

$ wget \
     --recursive \
     --no-clobber \
     --page-requisites \
     --html-extension \
     --convert-links \
     --restrict-file-names=windows \
     --domains w3schools.com \
     --no-parent \
         http://www.w3schools.com/html/default.asp

上面的命令会下载 http://www.w3schools.com/html/default.asp 下面所有的页面。

上面用到的wget网站下载选择解释:

  • –recursive: 下载整个网站
  • –domains w3schools.com: 不要下载指定域名之外的网页。
  • –no-parent: 仅下载html/文件夹下的网页。
  • –page-requisites: 现在网页包括的所有内容(images, CSS and so on).
  • –html-extension: 将网页保存为html文件。
  • –convert-links: 将连接转换为本地连接
  • –restrict-file-names=windows: 文件名保存为windows格式。
  • –no-clobber: 不要覆盖已有文件,在下载中断后继续下载。

更新:

/usr/bin/wget \
 --continue \
 --recursive \
 --user-agent="Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/534.16 (KHTML, like Gecko) Chrome/10.0.648.204 Safari/534.16" \
 --no-clobber \
 --page-requisites \
 --html-extension \
 -E \
 -e robots=off \
 --convert-links \
 --limit-rate=200k \
 --restrict-file-names=windows \
 --wait=1 \
 --domains tcl.tk \
 https://www.tcl.tk/man/tcl8.5/tutorial/tcltutorial.html

Leave a Reply

Your email address will not be published. Required fields are marked *