如何将整个网站归档以便离线查看?

59
我们实际上已经多次为客户烧录了我们的asp.net网站的静态/存档副本。我们一直使用WebZip,但是我们遇到了无数问题,例如崩溃、下载的页面链接不正确等等。
基本上,我们需要一个应用程序来爬取和下载我们asp.net网站上的所有内容(页面、图片、文档、CSS等),然后处理已下载的页面,以便可以在没有互联网连接的情况下本地浏览(去掉链接中的绝对URL等)。越简单易懂越好。这似乎是一个相当常见且(相对)简单的过程,但我尝试了其他几个应用程序,却感到非常失望。
有人推荐存档软件吗?有人能分享一个真正简单的过程吗?

3
请查看 https://archivebox.io,它是一个开源的、自托管的工具,可以创建网站的本地静态浏览 HTML 克隆版本(它保存HTML、JS、媒体文件、PDF、屏幕截图、静态资源等)。 - Nick Sweeting
9个回答

68

你可以使用wget

wget -m -k -K -E http://url/of/web/site

2
从 --help 命令中,我可以看到其它选项的功能,但是 K(大写)和 E 选项是什么作用? - スーパーファミコン
4
别忘了加上"-p"参数,这样才能获取到图片和其它嵌入式对象。("-E"是用来将文件转换为HTML扩展名的选项。"-K"则是备份原始文件,并将备份文件的扩展名改为".orig")。 - migu
20
更详细但不那么难懂的版本:wget --mirror --convert-links --backup-converted --adjust-extension http://网站地址。这个命令会下载整个网站并将所有链接转换成本地链接,备份转换后的文件,并根据内容类型为文件添加正确的扩展名。 - jgillman
5
对我来说,这只是获取index.html文件。 - Alper
1
是的,对我来说也是,它只检索index.html。而我正在尝试从Squarespace网站本地检索,但一直出现错误429“请求过多”。:( 我已经设置了速率限制和等待时间。 - Michael R
显示剩余2条评论

43
在Windows系统中,你可以使用HTTrack来查看网站内容。它非常灵活,可以让你设置下载速度。但是你也可以直接指定一个网站运行它,无需进行任何配置。
根据我的经验,HTTrack是一个非常好的工具,并且表现良好。以下是我喜欢HTTrack的一些特点:
  • 开源授权协议
  • 可恢复已停止的下载
  • 可以更新现有的存档
  • 你可以将其设置为不使用激进下载方式,以节省你的带宽和站点的带宽。

3
HTTrack也可在Linux系统中使用。 - dusoft
5
它也适用于Mac - brew install httrack - timothyclifford

7

Wayback Machine Downloader 是由 hartator 开发的简单快速的工具。

通过 Ruby 安装后,可根据所需域名和来自互联网档案馆的可选时间戳运行。

sudo gem install wayback_machine_downloader
mkdir example
cd example
wayback_machine_downloader http://example.com --timestamp 19700101000000

4

蓝蟹应用程序今天非常崩溃。 - 2540625

2

1
如果您的客户正在进行遵从性问题的归档,您需要确保内容可以得到认证。所列出的选项适用于简单查看,但它们不具备法律证明力。在这种情况下,您需要时间戳和数字签名。如果您自己做这些,将更加复杂。我建议使用像PageFreezer这样的服务。

1
对于OS X用户,我发现在这里找到的sitesucker应用程序可以很好地工作,而无需配置任何东西,只需要确定它跟随链接的深度即可。

截至2018年1月,sitesucker.us网站无法加载。 - Greg Dubicki
程序相关内容的翻译:程序再次运行,但将URL更改为SiteSucker.us重定向到作者的开发网站ricks-apps.com。 - user1011743

1
我只是使用:wget -m <url>

1
这只获取主页,而不是整个网站。 - 2540625

0
我现在已经使用HTTrack几年了。它可以很好地处理所有页面之间的链接等。我的唯一抱怨是我没有找到一个很好的方法来限制它只抓取子站点。例如,如果有一个名为www.foo.com/steve的站点我想要存档,它可能会跟随链接到www.foo.com/rowe并将其也存档。除此之外,它非常棒。高度可配置和可靠。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接