功能很强大啊!
shellwget --background \ --mirror \ --convert-links \ --adjust-extension \ --wait=5 \ --random-wait \ --limit-rate=1000K \ --no-clobber \ --page-requisites \ --span-hosts \ --domains=example.com \ # 指定你想要的网站 --user-agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36" \ --header="Accept-Language: zh-CN,en;q=0.9" \ --retry-connrefused \ --timeout=30 \ -e robots=off \ -P . \ https://example.com/ # 指定你想要的网站
--mirror
:启用镜像模式,自动递归下载并保持站点目录结构,同时下载修改后或新增的文件。
--convert-links
:将站内所有的绝对链接、相对链接都转换为本地离线访问链接。
--adjust-extension
:为没有扩展名的文件自动添加适当的文件扩展名,确保静态资源(如 HTML)文件扩展名正确。
--wait=5
:每次请求之间等待 5 秒,减轻服务器负载,避免触发 429 错误(Too Many Requests)。
--random-wait
:在 --wait
基础上增加一定的随机时间,模拟用户的真实访问行为。
--limit-rate=100K
:限制下载速度为 100KB/s,避免过快下载对服务器带来过大压力。
--no-clobber
:如果文件已经存在,避免重复下载。这可以节省时间和带宽。
--page-requisites
:下载网页所需的所有资源,如图片、样式表和脚本,确保离线浏览时页面能正确渲染。
--span-hosts
:允许跨主机名下载资源。如果网站引用的资源(例如图片或 JS 文件)托管在其他域名上,可以下载这些资源。
--domains=example.com
:限制下载的域名。这里确保只下载 example.com
域名及其子域名的内容,防止意外下载外部站点的文件。
--user-agent="Mozilla/5.0..."
:设置请求的 User-Agent
,模拟一个真实的浏览器请求,避免一些服务器拒绝 wget
。
--header="Accept-Language: en-US,en;q=0.9"
:设置请求头的语言,表明首选语言是英语。可以根据需要修改为其他语言。
--retry-connrefused
:如果服务器拒绝连接,自动重试。适用于偶发的服务器过载或网络问题。
--timeout=30
:设置网络请求超时时间为 30 秒,避免卡住太久,尤其是慢速网站。
-e robots=off
:禁用 robots.txt
文件的限制。默认情况下,wget
会遵守 robots.txt
规则,这个选项可以忽略它。
-P /path/to/save
:将下载的内容保存到指定路径 /path/to/save
下,便于管理下载的文件。
本文作者:jdxj
本文链接:
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!