如何使用 wget 镜像网站子目录

如何使用 wget 镜像网站子目录

我需要镜像以下 URL:

https://web.archive.org/web/20100515230709/http://markowitzbocadentist.com/

但我只需要镜像从这个日期“20100515230709”开始的文件,我尝试了很多wget选项,但它们要么抓取 index.html,要么抓取其他日期的文件。

我怎样才能实现它?

答案1

来自 wget 手册(1.15):

实际上,为了下载单个页面及其所有必需内容(即使它们存在于不同的网站上),并确保所有内容在本地正确显示,除了“-p”之外,作者还喜欢使用一些选项:

wget -E -H -k -K -p url

另外,robots.txt 可能会阻止某些内容,因此添加 -e robots=off

因此你得到:

wget -E -H -k -K -p -e robots=off https://web.archive.org/web/20100515230709/http://markowitzbocadentist.com/

这样我就得到了 38 个文件,都是该单个页面所需的,不会再多了。

如果你想要获取的不仅仅是该页面,你还需要下载早期的快照(部分快照)。因为archive.org只获取已更改页,完整站点具体日期几乎总是包含当天捕获的页面,但也包含更早日期的页面。例如,“程序”链接指向 2010-10-21 08:29:33 的副本,该日期早于您提到的日期(2010-05-15 23:07:09)。

所以你的问题的实际答案是:你不能镜像完全的一个日期的快照,至少无需从另一个日期的快照下载部分内容。

添加 -m(镜像选项)也会获取这些页面。

相关内容