在Windows系统中如何使用wget下载文件

yuday 2020-04-08 14:51 

使用WGET从HTTP上将文件下载到您的计算机。使下载更快,更有效,并能够在出现错误的情况下恢复下载。创建递归下载,即创建构成网页的所有文件的递归下载。

Wget是一个小型应用程序,它允许您通过命令行使用HTTP协议下载文件,网页甚至完整的Internet站点。它的大小小于200Kb,并且不包含在Windows操作系统中,因此,要使用它,我们必须下载它并将其合并到我们的系统中。它被设计为可以在Linux上运行,并且是一个开源应用程序,因此我们可以不受限制地使用它,并根据自己的喜好和需求对其进行配置。Wget没有图形界面,这让人有些困惑,但是习惯它不会带来任何问题。Wget比任何下载管理器都更快,更高效。它的特征意味着不会消耗RAM内存,不会与系统发生冲突(不会将文件添加到Windows或对注册表进行修改)。

为什么要使用WGET?

✔完全可配置。

✔其特点是在缓慢和不稳定的连接上都能稳定运行。如果下载由于网络问题而无法完成,Wget将自动尝试从结束位置继续下载,并重复该过程,直到恢复了整个文件。

✔周期性或递归下载,您可以按顺序下载整个Web目录,依次递归重复此过程,直到下载完所有页面或达到用户指定的最大重复深度为止。下载的页面存储在看起来像远程服务器的目录结构中。通过这种定期下载,您可以通过HTTP从网站上部分或完全复制任何文件系统的精确副本。在这些情况下,可以根据用户的请求进行页面链接的转换,以便它们可以脱机使用。

✔该程序是完全可移植的,也就是说,我们可以将其存储在内存中,以便在连接良好且具有即时访问权限的情况下下载必要的文件,而不会留下任何残留物或痕迹。

✔Wget支持通过代理下载,代理被广泛部署以提供公司防火墙和缓存内的Web访问,并快速提供访问内容的频率。

✔下载速度可能会有所限制,以避免占用所有可用带宽。

什么是递归下载?

从互联网下载任何类型的文件时使用wget的优势是无可争辩的,但是必须使用递归下载的地方是必须使用wget。递归下载无非是自动下载链接到所指示页面的所有文件,以使其在脱机使用时可以完全正常工作。在Wget中使用递归模式时,有几个选项。

,递归下载站点,它是使用最少的选项,因为很少有人需要从网站下载完整的树,并且使用语法“ WGET -R ln”可以实现所有操作,其中n是一个数字通过它我们可以限制子目录的数量,默认选项是5,通常就足够了。

,下载网页,但所有必须正确显示的文件,在这种情况下,将下载图像,其他多媒体文件,外部脚本,css等。

,下载与上一选项类似的网页,其中包含所有必需的文件,但在这种情况下,请包括这些链接指向的所有页面。在下载结束时,wget还可同步链接,以使此页面可离线运行。

在实践中使用WGET可以通过多种方式使用

①直接在CMD控制台或命令提示符中输入命令,这对于普通用户而言非常麻烦,并且如果我们经常使用该应用程序,我们必须花费更多的时间。

②使用批处理文件,每个文件都根据我们要进行的下载类型进行配置。

③使用免费的应用程序“ VisualWget”,它具有在Windows中使用它的界面,它与WGET链接以进行任何下载。

它的使用具有以下优点:

  • -创建一个下载队列,可以配置要同时进行的下载次数。
  • -它捕获剪贴板的内容,也就是说,在浏览器的链接中复制URL地址时,它将捕获它并自动开始下载。
  • -它提供了对中文的支持,使其使用和配置更加容易。就像WGET开源软件一样,平板电脑中包含WGET可执行文件,Windows的最新版本是1.11.4b。

④另一个选择是使用VBScript语言编写的脚本,该脚本专门用于将浏览器链接重定向到Wget。它是使用wget的最简单,最实用的方法之一。通过直接从Web浏览器将链接拖动到脚本所在的文件夹来工作,该文件夹非常适合放在桌面上。该脚本将连续下载您存放在该文件夹中的所有链接,并在完成每个链接后将其删除。

最后两个选项具有类似的局限性,它们不能用于带有高级选项的下载,它们仅在进行几次连续下载时才可行,但只能从隔离的网页上使用(对于VisualWegt,您也可以复制任何内容)剪贴板会将其解释为下载命令。换句话说,对于递归下载,理想的选择是使用批处理文件。

如何使用批处理文件通过WGET进行递归下载

批处理文件是在Windows命令行上执行命令的理想工具,无需具备高级知识,也无需在CMD控制台中手动输入此类命令。只需复制代码并将其粘贴到文本文件(可以使用记事本完成)中,然后将结果文件保存为.cmd文件扩展名而不是传统的.txt文件即可。通过在创建的文件上单击两次, Windows将打开CMD控制台并执行文件中包含的命令。如果您之前没有写过一批,请尝试第一个。将以下文本复制并粘贴到记事本中,然后执行上述操作,将其另存为test.cmd,然后双击它。

@ECHO OFF
DIR
PAUSE

执行上一个批处理文件时,将打开一个命令提示符窗口,其中显示了文件和文件夹的列表,这些文件和文件夹位于执行目录中,并列出了每个文件和文件夹的创建日期及其大小,它是使用DIR命令获得的。

使用WGET的批处理文件的实际示例

1-第一个示例,批处理文件以执行递归下载。

@ECHO OFF
wget -r -c -k http://www.apache.org/

请尝试一下,但是当您看到它可以工作时,请停止它,否则它将继续进行,直到您下载完整的Apache.org服务器为止。

2-第二个示例,使用此示例下载页面,在本例中为Wikipedia中的Wget页面,但请确保下载其所有元素并具有html文件扩展名。

@ECHO OFF
wget -p -E -nd http://en.wikipedia.org/wiki/Wget

3-下载网页以及该页面上链接所指向的所有文件,但只有两个深度目录。

@ECHO OFF
wget -r -l2 -p -c http://www.xxx.com/index.html

4-安全文件下载示例。

@ECHO OFF
wget -c -S -r http://download.mozilla.org/?product=firefox-4.0&os=win&lang=es-ES

使用此批处理,将下载Firefox安装程序的版本4,您可以中断下载,因为当再次运行该批处理文件时,它将在停止的同一点继续。

5-下载文件并随后验证其时间戳的示例,即是否存在另一个具有相同名称的文件,但更改了其创建或修改日期。

@ECHO OFF
wget -N http://www.ssd.noaa.gov/goes/east/carb/vis.jpg

该批处理文件将下载气象服务的卫星照片,但是每次再次运行时,它将在服务器上检查是否有比下载的图像新的图像,否则将保持原始图像不变。

语法和主要WGET选项

下表列出了使用Wget的主要修饰符。该应用程序允许许多其他应用程序,可以在其帮助页面(英语)上进行查询,可以通过以下链接进行访问www.gnu.org/software/wget/manual/wget.htmlWget支持两个使用选项的方式,最全的方式是使用全名或缩写简称。该表显示了两个选项。

选项名称内容描述
-o--output-file=archivo将操作的整个报告保存在文本文件中,如果再次执行,则将其覆盖。使用-a将信息添加到已创建的文件中。
-S--server-response它显示了应用程序发送的标头或http标头以及从服务器收到的响应。
-d--debug开发人员模式,显示更多详细信息。
-nv--no-verbose仅显示摘要信息。
-i--input-file=archivo读取外部文本文件的URL。
-t--tries=numero指定要执行的重试次数。使用0或inf进行无限次重试。默认选项是20。
-c--continue发生连接错误或故意取消连接时,请继续下载部分下载的文件。
-E--adjust-extension将.html扩展名添加到非所有网页,以方便脱机执行。
-p--page-requisites通过使用此选项,Wget将下载页面脱机工作所需的所有文件,图像,css,脚本等将被下载。
-r--recursive创建一个递归下载,即下载页面上链接所指向的所有文件。
-m--mirror创建站点的镜像或映像,类似于递归下载,但没有任何限制,与使用以下选项相同:-r -l inf -N。
-l--level=numero指定递归下载的深度级别,默认值为5。
-k--convert-links下载完成后,Wget重新编写链接,以便它们直接指向下载到计算机上的文件,因此下载的页面可以使用。
-nc--no-clobber防止再次下载计算机上已经存在的文件。
-nd--no-directories不要在递归下载上创建目录。
-P--directory-prefix=carpeta允许您为所有下载设置特定的目录或文件夹。
-A--accept archivos可让您指定您只想下载的文件类型,这些文件以逗号分隔列出。
-R--reject archivos使您可以指定要拒绝的文件类型,并以逗号分隔。
-I--include directorios限制仅以递归方式从中下载文件的目录,并以逗号分隔它们。
-X--exclude directorios与上一个选项相反,限制目录。
-np--no-parent避免从顶级目录下载文件,即使链接在递归下载中指向它们。
-N--timestamping如果我们的计算机上有副本,请检查上次修改请求文件的日期,如果有新副本,则仅从服务器下载。
-O--output-document=nombre让您重命名文件。
--referer=url允许您包含参考页面的地址,以便下载受保护的文件,以防止热链接。
--spider它使Wget像Web浏览器蜘蛛一样工作,无需下载任何内容即可检查和显示信息。
--limit-rate=cantidad将下载速度限制为每秒一定数量的字节。要以千字节为单位表示,请使用后缀k,om表示兆字节。
--no-cache禁用高速缓存后,Wget将发送Pragma指令:无高速缓存可直接从远程服务器获取文件。

在哪里下载Windows版Wget?

Wget最初是为Linux操作系统开发的,但是有针对Windows的发行版。在eternallybored.org上,您可以找到最新的编译版本,以EXE可执行文件或ZIP格式下载,适用于32位或64位版本的Windows。使用以下链接:下载Wget

发表评论


表情