为什么“wget -r -e robots=off http://ccachicago.org”不递归执行?

Chr*_*ard 5 download wget

我正在尝试递归下载http://ccachicago.org,并且正在下载一个文件,即根index.html文件。

我已经查看了使用 wget 递归下载并开始使用推荐的-e robots=off,但它的行为仍然相同。

我如何使用wget或其他工具下载该网站的副本?

Jen*_*y D 7

这是因为 wget 默认只在您启动时使用的主机名内进行递归下载。

http://ccachicago.org发出重定向到http://www.ccachicago.org。由于所有进一步的链接都在 下www.ccachicago.org,wget 会将这些链接视为站外链接,不会跟踪它们。

这里最简单的解决方案当然是从wget -r http://www.ccachicago.org.

您还可以将 www.ccachicago.org 添加到要关注的域列表中:

wget -r -D www.ccachicago.org http://ccachicago.org
Run Code Online (Sandbox Code Playgroud)

将来,您可以通过添加调试标志来找到此类信息。当我这样做时,我得到了

Deciding whether to enqueue "http://www.ccachicago.org/".
This is not the same hostname as the parent's (www.ccachicago.org and ccachicago.org).
Decided NOT to load it.
Redirection "http://www.ccachicago.org/" failed the test.
Run Code Online (Sandbox Code Playgroud)


uml*_*ute 7

你问wget到做一个递归的下载http://ccachicago.org,但这个网址不提供任何直接的内容。相反,它只是重定向到http://www.ccachicago.org(您还没有告诉wget要递归获取)。

如果您告诉wget下载正确的 URL,它将起作用:

wget -r -e robots=off http://www....
Run Code Online (Sandbox Code Playgroud)