wget诞生于1996年,是GNU项目下的开源命令行下载工具,凭借其“无界面胜有界面”的极简哲学,成为开发者、系统管理员和数据科学家的必备神器。它支持HTTP、HTTPS、FTP等主流协议,能在断网后自动续传、递归抓取整站资源,甚至模拟浏览器行为绕过反爬机制。无论是批量下载NASA公开的太空影像、定时备份远程服务器日志,还是克隆维基百科的特定词条,wget都能以一行代码轻松搞定。
WGET功能
1.递归下载:一键抓取网站目录及子页面资源
2.断点续传:网络中断后自动从上次进度恢复
3.带宽控制:限制下载速度避免挤占网络资源
4.后台运行:脱离终端持续执行长时间任务
5.认证支持:通过用户名/密码访问受保护内容
6.镜像克隆:完整复制网站结构并自动修正链接
WGET特色
1.批量下载:从文本文件读取URL列表实现队列下载
2.时间戳同步:仅下载比本地文件更新的远程资源
3.代理穿透:通过HTTP/HTTPS/SOCKS代理访问受限内容
4.请求头自定义:模拟浏览器User-Agent规避反爬
5.SSL/TLS加密:支持HTTPS证书验证与双向加密
6.输出重定向:将下载日志写入指定文件便于审计
7.限时操作:设置超时阈值防止无响应任务阻塞
常见问题
Q1:如何在Windows上安装wget?
A:推荐使用Chocolatey包管理器执行`choco install wget`,或下载GNU官方编译的EXE文件添加至PATH环境变量。
Q2:下载大文件时卡住怎么办?
A:使用`-c`参数启用断点续传功能,例如`wget -c https://example.com/large_file.zip`。
Q3:如何避免被网站封禁IP?
A:添加`--limit-rate=500k`限速,并设置`--random-wait`随机延迟(默认1-10秒)。
Q4:递归下载时如何排除特定文件类型?
A:使用`--reject`参数,例如`wget -r --reject=".mp4,.zip" https://example.com`。
Q5:如何仅下载更新过的文件?
A:使用`-N`参数启用时间戳比对,仅当远程文件更新时触发下载。