如何从archive.org Wayback Machine下载网站?


82

我想在archive.org上获取给定网站的所有文件。原因可能包括:

  • 原始作者没有存档他自己的网站,并且该网站现在离线,我想从中进行公共缓存
  • 我是某个网站的原始作者,丢失了一些内容。我想恢复它
  • ...

我怎么做 ?

考虑到archive.org的Wayback机器非常特殊:网页链接不是指向档案本身,而是指向可能不再存在的网页。客户端使用JavaScript来更新链接,但是递归wget之类的技巧将不起作用。


14
我遇到了同样的问题,并编写了一个gem。要安装:gem install wayback_machine_downloader。使用要检索的网站的基本URL作为参数运行wayback_machine_downloader:wayback_machine_downloader http://example.com更多信息:github.com/hartator/wayback_machine_downloader
Hartator 2015年

3
Ruby的Windows用户(对我来说是win8.1 64bit)的逐步帮助,这是我所做的工作:1)我安装rubyinstaller.org/downloads,然后运行“ ruby​​installer-2.2.3-x64 “ .exe”; 2)下载了zip文件github.com/hartator/wayback-machine-downloader/archive/…3)解压缩了我计算机中的zip 4)在Windows开始菜单中搜索“使用Ruby启动命令提示符”(续)
Erb 2015年

3
5)按照github.com/hartator/wayback_machine_downloader的说明进行操作(例如:将此“ gem install wayback_machine_downloader”复制粘贴到提示中。按Enter键,它将安装程序...然后遵循“使用”指南)。6)一旦您的网站被捕获,您将在C:\ Users \ YOURusername \ websites中找到文件
Erb

Answers:


62

我尝试了多种下载网站的方法,最后找到了Wayback机器下载器-之前Hartator曾提到过(因此,所有荣誉归他所有),但我只是没有注意到他对这个问题的评论。为了节省您的时间,我决定在此处添加wayback_machine_downloader gem作为单独的答案。

该站点位于http://www.archiveteam.org/index.php?title=还原列出了从archive.org下载的以下方法:

  • Wayback Machine Downloader,Ruby中的小工具,可从Wayback Machine下载任何网站。免费和开源。我的选择!
  • Warrick-主站点似乎已关闭。
  • Wayback downloader,该服务将从Wayback Machine下载您的站点,甚至为Wordpress添加一个插件。不是免费的。

我还用php写了一个“向后下载器”,下载资源,调整链接等: gist.github.com/divinity76/85c01de416c541578342580997fa6acf
hanshenrik

@ComicSans,在您链接的页面上,什么是存档团队抢夺
和平者

1
2018年10月,Wayback Machine Downloader仍然有效。
那位巴西佬

@Pacerier表示由存档团队生成的(多套)WARC文件(通常被馈送到Internet Archive的回溯机器中),请参见archive.org/details/archiveteam
Nemo

12

这可以通过结合wget使用bash shell脚本来完成。

这个想法是使用Wayback机器的一些URL功能

  • http://web.archive.org/web/*/http://domain/*将从所有列表中http://domain/递归列出。它可用于构造要下载的页面索引,并避免使用启发式方法检测网页中的链接。对于每个链接,还有第一个版本和最后一个版本的日期。
  • http://web.archive.org/web/YYYYMMDDhhmmss*/http://domain/page将列出http://domain/pageYYYY年的所有版本。在该页面中,可以找到特定版本的链接(带有确切的时间戳)
  • http://web.archive.org/web/YYYYMMDDhhmmssid_/http://domain/pagehttp://domain/page在给定的时间戳返回未修改的页面。注意id_令牌。

这些是构建脚本以从给定域下载所有内容的基础。


7
您应该真正使用API​​,而不是archive.org/help/wayback_api.php Wikipedia帮助页面适用于编辑人员,而不适用于一般公众。因此,该页面集中在图形界面上,该界面既已被取代又不足以完成此任务。
Nemo

仅仅说出URL(如http://web.archive.org/web/19981202230410/http://www.google.com/)并添加id_到“日期数字”的末尾可能会更容易。然后,您会得到类似的信息http://web.archive.org/web/19981202230410id_/http://www.google.com/
haykam '16

1
Python脚本也可以在这里找到:gist.github.com/ingamedeo/...
Amedeo大街Baragiola

4

Warrick有专门为此目的设计的工具:https : //code.google.com/p/warrick/

它基于Memento协议。


3
据我设法使用它(在2017年5月),它只是恢复了archive.is所拥有的内容,而几乎忽略了archive.org中的内容。它还尝试从Google / Yahoo缓存中获取文档和图像,但完全失败。自Google Code关闭以来,Warrick已在GitHub上克隆了好几次,也许那里有一些更好的版本。
Gwyneth Llewelyn's

0

您可以轻松地做到这一点wget

wget -rc --accept-regex '.*ROOT.*' START

ROOT网站的根URL 在哪里,并且START是起始URL。例如:

wget -rc --accept-regex '.*http://www.math.niu.edu/~rusin/known-math/.*' http://web.archive.org/web/20150415082949fw_/http://www.math.niu.edu/~rusin/known-math/

请注意,您应该绕过Web存档的STARTURL 包装框架。在大多数浏览器中,您可以右键单击页面,然后选择“仅显示此框架”。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.