> 网络管理 > wget

wget -r: 递归下载网站

wget -r 是一个强大的命令,用于将网站或特定目录的内容递归地下载到本地系统。它通过跟踪链接并复制指定深度内的所有文件和目录,非常适合离线浏览网站或进行备份。

概述

wget -r 自动遍历并下载网站上的文件和目录,直到指定的深度。这对于镜像网站、离线浏览或收集特定类型的文件非常有用。

主要功能

  • 镜像整个网站
  • 跟踪指定深度的链接
  • 过滤文件类型
  • 转换链接以进行离线浏览

主要选项

在使用 wget -r 时,可以通过以下主要选项来精细控制递归下载行为。

递归下载控制

保存与输出

生成的命令:

请尝试组合命令。

描述:

`wget` 执行命令。

通过组合这些选项,您可以与 AI 一起虚拟地执行命令。

使用示例

wget -r 命令的实际使用示例。

基本递归下载

wget -r https://example.com/docs/

递归下载指定 URL 的所有内容。

网站镜像(限制深度,转换链接)

wget -r -l 2 -k -p https://example.com/

将网站下载到深度为 2,并转换链接以便离线查看。

仅下载特定文件类型

wget -r -A "*.pdf,*.doc" https://example.com/files/

递归下载指定目录中的 PDF 和 DOC 文件。

不访问父目录的下载

wget -r -np https://example.com/data/

仅在当前目录内递归下载,不访问父目录。

指定下载目录

wget -r -P /home/user/websites https://example.com/

将所有下载的文件保存到指定的本地目录 `/home/user/websites`。

限制下载速率和设置等待时间

wget -r --limit-rate=200k --wait=1 https://example.com/large-site/

将下载速率限制为 200KB/s,并在每次请求之间等待 1 秒,以减少服务器负载。

提示与注意事项

在使用 wget -r 时,请注意不要给服务器造成过大负担,并下载所需文件以提高效率。

有用提示

  • 使用 `--wait` 选项减少服务器负载:短时间内发送大量请求可能会给服务器带来压力,因此建议使用 `--wait=1`(等待 1 秒)等选项。
  • 使用 `--limit-rate` 限制带宽:可以限制下载速率,避免过度占用网络带宽。
  • 遵守 robots.txt 协议:大多数网站通过 `robots.txt` 文件指定爬取规则。wget 默认遵守此规则,但可以使用 `--execute=robots=off` 选项忽略(不推荐)。
  • 使用 `-l`(深度)和 `-np`(禁止访问父目录)选项防止无限循环:错误的配置可能导致无限循环或下载大量不需要的文件。
  • 结合使用 `-k`(转换链接)和 `-p`(下载页面必需文件)选项以进行离线浏览:这两个选项对于在本地流畅浏览下载的网站至关重要。

相同类别命令