为什么wget只下载一些网站的index.html?
Wget还可以下载整个网站。但是因为这会给服务器带来很重的负载,所以wget将遵循robots.txt文件。
代码语言:javascript复制 wget -r -p http://www.example.com-p参数告诉wget包含所有文件,包括图像。这将意味着所有的HTML文件将看起来像它们应该做的。
那么,如果您不希望wget遵守robots.txt文件,那该怎么办呢?您可以简单地将-e robots=off添加到命令,如下所示:
代码语言:javascript复制 wget -r -p -e robots=off http://www.example.com由于许多网站不会让你下载整个网站,他们会检查你的浏览器身份。要解决这个问题,请使用我上面解释过的-U mozilla。
代码语言:javascript复制 wget -r -p -e robots=off -U mozilla http://www.example.com很多网站所有者不会喜欢你下载他们整个网站的事实。如果服务器发现您正在下载大量文件,它可能会自动将您添加到黑名单中。解决这个问题的方法是在每次下载后等待几秒钟。使用wget的方法是包含--wait=X (其中X是秒数)。
您还可以使用参数:-- random -wait让wget随机选择等待的秒数。要将此内容包含到命令中,请执行以下操作:
代码语言:javascript复制wget --random-wait -r -p -e robots=off -U mozilla http://www.example.com
