功能概述
整站下载是BT整站下载管家的核心功能,能够智能下载网站的静态资源,特别针对现代Web应用(如Blazor应用)的JavaScript混淆/加密问题,使用Selenium/Playwright获取渲染后的完整HTML内容,并按照原始网页的目录结构进行组织。
💡 核心特点:下载的HTML是渲染后且已删除加密JS的文件,不是原网页文件,可以直接打开查看完整页面内容。
主要功能
1. JavaScript渲染支持
- 多重渲染引擎:Selenium → Playwright → requests 三重备选,确保获取完整页面内容
- 支持JavaScript渲染:使用Selenium获取渲染后的完整HTML,避免JavaScript混淆问题
- Blazor应用优化:专门针对Blazor应用,等待JavaScript完全执行
- 智能重试机制:支持1-10次重试,递增等待时间,应对人机验证等临时问题
- 加密JS自动删除:自动检测并删除HTML中的加密/混淆JavaScript代码,确保下载的HTML文件干净可用
2. 四种操作模式
| 模式 |
功能说明 |
适用场景 |
| 模式1:断点续传 |
从todo.json恢复未完成的任务,自动跳过已下载的资源 |
任务中断后继续下载 |
| 模式2:URL列表下载 |
从url.txt文件读取URL列表,批量下载所有URL的静态资源 |
已有URL列表,批量下载 |
| 模式3:智能链接提取VIP |
输入目标URL,自动提取页面中的所有同域链接,保存到url.txt后开始下载 |
从单个页面开始,自动爬取整个网站 |
| 模式4:失败重试 |
从错误日志中解析失败的URL,重新下载这些资源 |
下载失败后重新尝试 |
3. 资源类型选择
支持多选资源类型,可以选择下载以下资源:
- 全部:下载所有类型的资源
- 仅HTML:只下载HTML文件
- 仅CSS:只下载CSS文件
- 仅JS:只下载JavaScript文件
- 仅字体VIP:只下载字体文件(自动从CSS中提取字体URL)
- 仅图片VIP:只下载图片文件(自动从CSS中提取图片URL)
✨ 智能资源收集:如果选择了字体或图片资源类型,工具会自动收集CSS文件,并从CSS中提取字体URL(@font-face)和图片URL(background-image等)。
4. 编码和兼容性
- 网站编码处理:支持自动检测、UTF-8、GBK、GB2312网站编码
- 保存编码选择:支持与原站一致、UTF-8、GBK、GB2312编码保存文件,无BOM
- Cookie支持:可选的Cookie设置,支持登录状态下载
- UserAgent选项:支持电脑chrome、手机chrome、自定义UserAgent
5. VIP功能
🔒 VIP专享功能:
- 智能链接提取(模式3)
- 源页面混淆/加密处理(反混淆/解密)
- 高级设置:Cookie设置
- 批量处理:单次URL数量>10
- 仅字体、仅图片资源类型
使用流程
模式2:URL列表下载(推荐)
- 准备URL列表文件(url.txt),每行一个URL
- 选择操作模式:模式2(URL列表下载)
- 选择资源类型(支持多选)
- 选择网站编码和保存编码
- 输入Cookie(可选)
- 选择输出目录
- 点击"开始下载"
模式3:智能链接提取(VIP)
- 选择操作模式:模式3(智能链接提取)
- 输入目标URL(如:https://example.com)
- 设置重试次数(1-10次,默认3次)
- 选择资源类型和其他配置
- 程序会自动提取页面中的所有同域链接
- 保存到url.txt后开始批量下载
输出结构
下载完成后,文件将按照以下结构组织:
输出目录/
├── logs/ # 日志文件
│ ├── success.log # 成功日志
│ └── error.log # 错误日志
├── assets/ # 静态资源目录(完全保持原始相对路径)
│ └── libs/
│ ├── jsvectormap/
│ └── leaflet/
├── css/ # CSS文件
├── js/ # JavaScript文件
├── images/ # 图片文件
├── fonts/ # 字体文件
├── index.html # 根目录页面
└── blog/ # 按URL路径创建的目录结构
└── post/
└── index.html
📝 重要说明:
- 所有HTML文件都可以直接双击打开查看完整网页
- HTML文件中的资源引用会自动调整为相对路径
- 静态资源完全保持原始网站的相对路径结构
- 下载的HTML是渲染后且已删除加密JS的文件
技术特性
- 智能URL去重:自动识别和去除URL中的fragment(#锚点),避免重复下载
- 智能URL过滤:自动提取同域页面链接,排除外链和静态资源
- 静态资源去重:自动识别并跳过重复的静态资源,避免重复下载
- 相对路径引用:HTML、CSS、JS文件中的静态资源都使用相对路径,直接打开即可查看完整网页
- 级联资源处理:自动解析并修改CSS和JS文件中的资源引用为相对路径
- 断点续传:支持任务中断后从断点继续,避免重复工作
- 任务状态保存:自动保存下载进度到 `todo.json` 文件
注意事项
- 网络连接:确保网络连接正常,下载大文件时需要稳定网络
- 反爬虫机制:部分网站可能有反爬虫保护,下载可能会失败
- 浏览器依赖:首次使用需要安装Chrome浏览器,Selenium会自动下载WebDriver
- Playwright支持:如需使用Playwright,需要运行
python -m playwright install
- 处理时间:反混淆/解密功能需要较长时间,请耐心等待
- VIP权限:部分功能需要VIP会员才能使用