如何存档整个网站以供离线观看?

时间:2009-02-11 21:22:16

标签: html web-crawler archive

我们实际上已多次为客户刻录我们的asp.net网站的静态/存档副本。到目前为止,我们已经使用过WebZip,但我们遇到了崩溃问题,下载的页面无法正确重新链接等等。

我们基本上需要一个应用程序来抓取并下载我们的asp.net网站上的所有内容的静态副本(页面,图像,文档,CSS等),然后处理下载的页面,以便可以在没有互联网连接的情况下在本地浏览它们(摆脱链接中的绝对URL等)。越白痴证明越好。这似乎是一个非常普遍和(相对)简单的过程,但我已经尝试了一些其他的应用程序,并且真的没有打动

有人有他们推荐的存档软件吗?有人会分享一个非常简单的过程吗?

9 个答案:

答案 0 :(得分:65)

您可以使用wget

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

答案 1 :(得分:37)

在Windows中,您可以查看HTTrack。它非常易于配置,允许您设置下载速度。但是你可以将它指向一个网站,并在没有任何配置的情况下运行它。

根据我的经验,它是一个非常好的工具,效果很好。我喜欢HTTrack的一些事情是:

  • 开源许可证
  • 恢复停止下载
  • 可以更新现有存档
  • 您可以在下载时将其配置为非侵略性,这样就不会浪费您的带宽和网站带宽。

答案 2 :(得分:6)

Wayback Machine Downloader hartator简单快捷。

通过Ruby安装,然后使用Internet Archive中的所需域和可选时间戳运行。

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

答案 3 :(得分:4)

我在OSX上使用Blue Crab,在Windows上使用WebCopier

答案 4 :(得分:2)

wget -r -k

...并调查其余选项。我希望您遵循以下准则:http://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html因此,所有资源都可以通过GET请求安全。

答案 5 :(得分:1)

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

答案 6 :(得分:1)

对于OS X用户,我发现找到的siteucker应用程序here运行良好,但没有配置任何内容,只有链接有多深。

答案 7 :(得分:1)

如果您的客户针对合规性问题进行存档,则需要确保可以对内容进行身份验证。列出的选项适合简单观看,但在法律上不允许。在这种情况下,您正在寻找时间戳和数字签名。如果你自己做的话要复杂得多。我建议使用PageFreezer等服务。

答案 8 :(得分:0)

我已经使用HTTrack好几年了。它处理所有的页面间链接,等等。我唯一的抱怨是我没有找到一个很好的方法将它限制在一个子站点。例如,如果我想存档一个网站www.foo.com/steve,它可能会链接到www.foo.com/rowe并存档。否则它很棒。高度可配置和可靠。