This commit is contained in:
ChuXun
2025-10-11 14:29:34 +08:00
parent 34fbaf6f49
commit 6c78d44a93
3 changed files with 337 additions and 0 deletions

52
README.md Normal file
View File

@@ -0,0 +1,52 @@
# Chaoxing 课程字幕批量下载工具
本项目包含自动化脚本可批量提取超星课程视频字幕SRT支持 Cookie 配置和多课程处理。
## 使用方法
### 1. 环境准备
- 安装 Python 3.x
- 安装依赖包:
```bash
pip install requests beautifulsoup4 python-dotenv
```
### 2. 配置 Cookie
- 在项目根目录下创建 `.env` 文件(已自动生成),内容如下:
```env
CHAOXING_COOKIE=你的超星登录Cookie
```
- 如 Cookie 过期或更换账号,直接修改 `.env` 文件即可。
### 3. 下载课程 HTML
- 用浏览器保存你要下载字幕的课程页面(建议保存课程目录页或视频列表页),如 `course.html`。
- 将 HTML 文件放到脚本所在目录。
### 4. 提取字幕 JSON 链接
- 运行 `subtitle_downloader.py`,自动解析 HTML提取所有字幕 JSON 链接,保存为 `subtitles/课程名.txt`。
```bash
python subtitle_downloader.py
```
- 如需处理其他课程,只需更换 HTML 文件并重新运行脚本。
### 5. 下载 SRT 字幕文件
- 运行 `srt_fetcher.py`,自动读取 `subtitles/` 下所有 `.txt`,下载对应 SRT 文件到 `srt/` 文件夹。
```bash
python srt_fetcher.py
```
## 文件说明
- `downloader.py`:通用文件下载脚本(如需下载其他资源可用)
- `subtitle_downloader.py`:解析课程 HTML提取字幕 JSON 链接
- `srt_fetcher.py`:批量下载 SRT 字幕文件
- `.env`:存储 Cookie
- `subtitles/`:保存每个课程的字幕 JSON 链接
- `srt/`:保存下载的 SRT 字幕文件
## 常见问题
- Cookie 失效:请重新获取并更新 `.env` 文件
- 页面结构变化:如遇解析失败,请反馈或自行调整 `subtitle_downloader.py` 的解析逻辑
- SRT 下载失败:检查 Cookie 是否有效,或字幕 JSON 链接是否正确
## 免责声明
本脚本仅供学习交流使用,请勿用于任何商业或非法用途。