根据官方的介绍1,HTTrack 是一个易用的离线浏览工具,他允许用户从万维网中离线备份某一个网站,包括建立层叠的目录,HTML,图片,以及其他文件。工具在 GPL 协议下开源。
最近主要是因为想要备份 http://www.runningman2015.com/guidang/ 这个网站,突然想到了这个工具。在此之前曾经想要自己用 scrapy 提取网站结构,然后存到数据库,想了一下,直接一个命令可以实现的事情,完全可以不用 scrapy 了。
安装
在許多Unix-like系統下,只需要用包管理工具安裝httrack即可。例如Debian使用
sudo apt-get install httrack webhttrack
该工具集包含一个命令行 httrack
和 一个WEB界面的 webhttrack
。如果想要直观的运行 HTTrack,可以直接使用 webhttrack
。 HTTrack 官方提供 Windows 版本,可以直接去官网1下载。
例子
一個使用例子:
httrack "http://www.runningman2015.com/" -O "/home/einverne/rm/" "+*.runningman2015.com/*" -v
它的意思是:以http://www.runningman2015.com/ 为起始URL,输出到 /home/einverne/rm/ 文件夹,范围是 runningman2015.com 域名下的所有文件,并显示所有错误信息(verbose)。
其他参数
-
O 镜像后本地路径 -O path/to/local
-
w 镜像网站 (–mirror) W mirror web sites, semi-automatic (asks questions) (–mirror-wizard) 更加自动化的备份
更多参考官网手册2。
当然新手也可以直接运行 httrack
命令,该命令会自动产生一个向导,选择123 即可。
其他工具
名称 | 网址 | 平台 | 优缺点 |
---|---|---|---|
Teleport Pro | http://www.tenmax.com/teleport/pro/index.htm | Windows | 整站备份,网站结构清晰,只支持单一平台,收费 |
Cyotek WebCopy | https://www.cyotek.com/cyotek-webcopy | Windows with .NET 4.6 | 整站备份,免费 |
其他命令行
通过 wget
命令来下载整个站点内容
wget -m -p -E -k -r --no-parent -e robots=off www.example.com
说明:
-r
表示递归下载,即下载网站的所有页面和资源。-np
表示不下载父目录,即只下载当前目录及其子目录的内容。-p
表示下载 HTML 页面中引用的所有资源,例如图片、CSS 和 JavaScript 文件。-k
表示转换 HTML 页面中的链接,使其指向本地文件。
缺点
镜像站点功能很强大,但是下载离线的数据非结构化数据,镜像功能对与纯静态HTML站点非常有效,但是对于目前互联网上的大部分 JS 动态网站却无能为力,镜像后容易都是内容。