如何使用 Wget 从 Internet 下载任何内容

Wget 是一个命令行实用程序,可用于下载 Internet 上几乎所有可用的内容。 问题在于,它应该可以通过 HTTP、HTTPS 或 FTP 协议使用; 否则 Wget 将无法下载。 有多种使用 Wget 的方法,例如,您可以使用 Wget 下载网站上的每个图像,或者您也可以下载单个文件。 Wget 甚至可以在可能的情况下恢复下载。 所以,如果您想知道 Wget 是如何工作的,以及它可以为您做什么, 这里是如何使用 Wget

安装 Wget

1. 在 macOS Sierra 上安装 Wget

在我们开始使用 Wget 之前,我们需要在我们的系统上安装它。 现在,幸运的是,大多数 Linux 发行版都预装了 Wget,因此您不必做任何额外的工作。 但是,如果您使用的是 Mac,则必须安装 Wget。 这可以使用 Homebrew (下载)。 如果您需要任何帮助,请按照以下步骤操作:

  • 首先,您必须在 Mac 上安装 Homebrew,才能下载 Wget。 为此,只需 启动终端,然后键入以下命令:
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

  • 命令完成后, 将安装自制软件 在您的系统上。 您现在可以使用 Homebrew 安装软件包,例如 Wget。 在终端中,只需运行以下命令:
brew install wget

使用自制软件在 Mac 上安装 wget

  • Homebrew 将自动启动 下载、解压和安装 Wget 在您的系统上。 此步骤可能需要一些时间,具体取决于您的网络速度,因此请耐心等待。 命令完成后,您应该可以在 Mac 上使用 Wget。 要检查它是否已安装,只需使用以下命令:
wget -V

检查 wget 安装

2.在Windows上安装Wget

在 Windows 上安装 Wget 需要花费更多的精力,但很容易完成。 如果您想在您的 Windows PC 上安装 Wget,只需按照以下步骤操作:

  • 第一的, 下载 Cygwin,然后 运行下载的安装文件.
  • 当它询问默认下载源时,选择“从 Internet 安装“,然后点击 “下一个”。

从互联网安装

  • 选择安装目录 对于 Cygwin,以及一个目录,它将保存用于安装实用程序的包文件。

安装目录

  • 在下一个屏幕中,您需要选择您的互联网连接。 如果您使用的是代理,请选择代理的类型,并填写详细信息。 但是,对于大多数用户来说,选择是“直接连接“。

直接连接

  • 然后您将看到一个 镜子列表, 选择其中任何一个来下载 Cygwin。 如果下载失败,您可以使用不同的镜像重试。

选择镜子

  • 在下一个窗口中,搜索 “wget”, 并点击 加上旁边 “网络” 在出现的列表中。 在这里,“wget”将被自动选中。 只需点击 “下一个”。

搜索 wget

  • 下一个屏幕将显示它需要下载的包。 只需点击 “下一个”。

下一个依赖项

  • 安装完成后会询问是否要安装 创建一个桌面图标和/或添加一个 进入开始菜单. 这完全是个人喜好问题,但我建议您至少将其添加到开始菜单中,以便您轻松找到它。

创建桌面图标

而已。 Wget 现在已安装在您的 Windows PC 上。 但是,您将无法从命令提示符运行它。 相反,你必须 启动 Cygwin 终端,并从那里使用 Wget.

如何使用 wget

现在我们已经在我们的系统上启动并运行了 Wget,让我们探索使用 Wget 从 Internet 下载文件、文件夹甚至整个网站的所有酷方法。 以下是您可以在系统上使用 Wget 做的一些有趣的事情。

笔记我在运行 macOS Sierra 10.12.3 beta 的 MacBook Air 上使用 Wget。 但是,由于我们使用的实用程序是相同的 (Wget),因此在您可能使用 Wget 的任何操作系统上,这些命令都是相同的。

1.使用Wget下载文件

您可以使用 Wget 轻松地从 Internet 下载文件。 只需使用以下命令

wget <url>

使用 wget 下载文件

  • 下载文件并使用特定文件名保存

服务器上的文件有时具有最奇怪的名称,您可能希望下载该文件,并让 Wget 自动将其重命名为对您更有意义的名称。 为此,只需使用以下命令

wget -o <output_file.extension> <url_to_download>

使用 wget 下载文件并以文件名保存

  • 仅下载特定文件类型

Web 服务器可能托管许多不同的文件。 那么,如果您只想下载服务器上的所有 PDF,或者可能是所有 GIF,该怎么办? 只需使用以下命令:

wget -r -A pdf <url_to_download>

使用 wget 下载特定的文件类型

马克扎克伯格在他的哈佛宿舍里使用了这个特殊的命令,只需一个命令就可以下载所有图像,并建立了臭名昭著的网站“facesmash.com”。

wget -r -A jpg, jpeg, png, bmp <url_to_download>

使用 wget 下载带有接受列表的多种文件类型

2. 使用 Wget 从多个 URL 下载文件

假设您需要从 Internet 上的多个不同位置下载文件。 可能有一个 url1 上的 PDF 文件, 一个重要的 url2 上的 ZIP 文件, 和 url3 中的其他内容. 如果您以传统方式使用 Wget,则必须运行 3 次。 但是,有一种更简单的方法可以做到这一点。

  • 首先,创建一个包含下载数据所需的所有 URL 的文件。 确保你 将每个 URL 保留在自己的行中. 保存文件,并确保记住名称。

带有 url 的文件

  • 在终端中,使用以下命令从所有 URL 下载文件:
wget -i <file_name>

使用外部文件指定 url

在哪里 ”文件名是您使用所有 URL 创建的文件的名称 你需要从那里下载东西。

3. 使用 Wget 下载整个网站

是的,你没有看错。 您也可以使用 Wget 下载整个网站的内容。 显然,如果网站太大,这个命令将需要很长时间才能完成,更不用说它会占用您系统上的大量空间。 也就是说,如果您想使用 Wget 下载整个网站,只需使用以下命令:

In relation :  如何免提控制 Apple Watch

wget --mirror -p <url> -P ./LOCAL-DIR WEBSITE-URL

使用 wget 下载整个网站

这会将整个网站下载到一个文件夹“本地目录” 在您的工作目录中。 网站的文件将保存在与网站同名的文件夹中,感谢“网址“。

4. 使用 Wget 作为网络蜘蛛

您还可以使 Wget 像网络爬虫(或网络蜘蛛)一样工作。 这在您想要时很有帮助 确认您要下载的文件的 URL 有效. 要将 Wget 用作网络蜘蛛并检查 URL 的有效性,只需使用以下命令:

wget --spider <url>

使用 wget 作为蜘蛛

这将检查您提到的 URL 是否存在,并且您将收到一个响应,告诉您检查的结果。

  • 正面回应:

正面回应

  • 负面回应:

消极反应

5. 继续不完整的下载

这是 Wget 可以做的另一件非常酷的事情。 假设您正在使用 Wget 下载文件,但由于某种原因,您不得不关闭笔记本电脑。 下次你想尝试下载相同的文件时,Wget 实际上可以 继续下载 为你。 你只需要 确保您位于上次下载文件的同一文件夹中,然后使用以下命令:

wget -c <url>

继续下载

当 Wget 看到文件的一部分已经存在于您的系统中时,它会自动继续下载。

笔记如果服务器上的文件自您上次尝试下载后已更改,则不应使用此命令,因为它会导致您无法读取的损坏文件。

此外,如果服务器不允许继续下载,那么 Wget 将拒绝从头开始下载。 如果您想从头开始下载,则必须从系统中删除部分下载的文件, 第一的。

使用这个参数还有更多的条件,你可以阅读更多关于它的信息 wget 手册页.

6.限制下载速度

如果您使用 Wget 下载文件并浏览互联网,您可能不希望 Wget 用完所有带宽。 幸运的是,Wget 包含一个可用于 限制带宽量 Wget 可用于在您的系统上下载文件:

wget --limit-rate=<speed> <url>

限制下载速度

笔记请记住,速度是以字节而不是比特为单位的。 因此,如果您使用 Wget –limit-rate=20k,它会将带宽使用限制为 20 kB,而不是 20 kb。

7. 使用 Wget 从 FTP 服务器下载文件

如果您需要从 FTP 服务器下载文件,您也可以使用 Wget 来完成。 只需使用以下命令从 FTP 服务器下载文件:

wget <ftp_url>

wget ftp

  • 使用登录从 FTP 服务器下载文件

如果您的 FTP 服务器需要登录才能允许下载文件,您也可以简单地使用 Wget 传递凭据。 只需使用以下命令:

wget --ftp-username=USERNAME --ftp-password=PASSWORD <ftp_url>

wget ftp 身份验证

还请参见:用于访问隐藏功能的 30 个 Mac 终端命令

轻松使用 Wget 从 Internet 下载文件

您可以使用 Wget 从 Internet 上的任何位置下载文件。 然而,虽然 Wget 几乎总是有效,但有些服务器会阻止访问 Wget,在这种情况下,您可以尝试更改 Wget 命令的 –user-agent。 但是,除非您绝对知道自己在做什么,否则这不是推荐的做法。 在大多数情况下,Wget 将允许您从 Internet 下载任何文件,只要您有权访问它及其 URL。

那么,您是否曾经使用过 Wget 从互联网上下载文件? 让我们了解您使用 Wget 通过 HTTP、HTTPS 和 FTP 协议下载文件的经验。 此外,如果您知道 Wget 的其他一些您认为值得列入此列表的用途,请在下面的评论部分告诉我们。