You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Wget下载单网页及全部CSS/JS/图片等关联资源(含CDN资源)

可行解决方案

你之前使用的wget命令缺少跨域下载参数,且原版wget不支持并行下载、自定义资源存放路径,因此无法达到预期效果,可采用以下两种方案实现需求:

方案1:使用wget2(推荐,原生支持并行和自定义目录结构)

wget2是wget的官方升级版本,内置并行下载能力,支持直接指定各类资源的存放路径,完全匹配你需要的目录结构:

  1. 先安装wget2
    • Debian/Ubuntu 系:apt install wget2
    • CentOS/RHEL 系:dnf install wget2
    • macOS:brew install wget2
  2. 执行下载命令
wget2 --page-requisites --convert-links --adjust-extension \
      --directory-prefix=FOLDER \
      --asset-directory=assets_folder \
      --css-directory=assets_folder \
      --js-directory=assets_folder \
      --image-directory=assets_folder/IMAGES_FOLDER_WITH_ALL_NEEDED_IMAGES \
      --max-parallel=16 \
      --span-hosts \
      http://example.com

参数说明:

  • --page-requisites:下载页面所有依赖的CSS、JS、图片等资源
  • --convert-links:自动转换页面内的资源路径为本地相对路径,保证离线可正常访问
  • --directory-prefix:指定下载内容的根目录为你需要的FOLDER
  • 各类--xxx-directory参数:分别指定不同类型资源的存放路径,直接匹配要求的目录结构
  • --max-parallel=16:最多同时开启16个下载任务,大幅提升下载速度
  • --span-hosts:允许跨域下载CDN上的关联资源
    执行完成后直接得到你要求的目录结构,无需额外调整。

方案2:原版wget配合脚本整理(无法安装wget2时使用)

如果环境限制只能使用原版wget,可以先下载所有资源,再通过简单脚本整理目录和修改路径:

  1. 执行下载命令获取所有资源
wget -k -p -H --adjust-extension --directory-prefix=FOLDER http://example.com

新增的-H参数允许跨域下载CDN资源。
2. 执行整理脚本(在FOLDER同级目录下运行)

#!/bin/bash
# 创建目标目录结构
mkdir -p FOLDER/assets_folder FOLDER/assets_folder/IMAGES_FOLDER_WITH_ALL_NEEDED_IMAGES

# 移动所有CSS、JS文件到assets_folder
find FOLDER -type f \( -name "*.css" -o -name "*.js" \) -exec mv {} FOLDER/assets_folder/ \;

# 移动所有图片文件到图片子目录
find FOLDER -type f \( -iname "*.png" -o -iname "*.jpg" -o -iname "*.jpeg" -o -iname "*.gif" -o -iname "*.webp" -o -iname "*.svg" \) -exec mv {} FOLDER/assets_folder/IMAGES_FOLDER_WITH_ALL_NEEDED_IMAGES/ \;

# 替换index.html内的JS、CSS资源路径
sed -i -E 's/(src|href)="[^"]*\/([^\/"]+\.(js|css))"/\1="assets_folder\/\2"/g' FOLDER/*.html

# 替换index.html内的图片资源路径
sed -i -E 's/(src|href)="[^"]*\/([^\/"]+\.(png|jpg|jpeg|gif|webp|svg))"/\1="assets_folder\/IMAGES_FOLDER_WITH_ALL_NEEDED_IMAGES\/\2"/g' FOLDER/*.html

可选适配参数

如果目标站点有反爬限制,可在下载命令中添加以下参数:

  • 模拟浏览器UA:--user-agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36"
  • 跳过证书校验(仅对信任站点使用):--no-check-certificate

内容的提问来源于stack exchange,提问作者JohnBowls

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 14:15:02