一个合并后的单 userscript,覆盖以下页面场景:
classroom.msa.buaa.edu.cn/livingroom*classroom.msa.buaa.edu.cn/coursedetail*spoc.buaa.edu.cn/*
- 导出 SRT 字幕
- 导出 TXT 时间戳笔记
- 打开 PPT 讲义打印页,并可在浏览器打印窗口中选择“另存为 PDF”
- 悬浮面板显示字幕/PPT 是否已就绪
- 每节课就地显示:
- 下载视频
- 预览视频
- 导出 PPTX
- 页面顶部提供:
- 下载全部视频
- 下载全部 PPT
- 可以先访问
https://classroom.msa.buaa.edu.cn/courseCenter搜索全校课程,再进入对应课程详情页下载课程视频
- 检测播放器是否就绪
- 显示视频时长与当前进度
- 倍速快捷按钮与自定义倍速输入 (播放器限制二倍速,更快的方式见我其他仓库)
- 自动下一节 (不可用)
- 视频链接查看 / 打开 / 复制
- 轻量日志面板
- 安装浏览器扩展 Tampermonkey。
- 安装仓库中的
buaa-spoc-helper.js。 - 确保浏览器允许 userscript 在目标站点运行。
适用页面:classroom.msa.buaa.edu.cn/livingroom*
进入页面后,右侧会出现一个可拖动的悬浮面板。
- 打开课程回放页。
- 先点击页面内的“语音 / 字幕”相关标签,触发接口请求。
- 当面板中“字幕已就绪”亮起后:
- 点击“导出 SRT 字幕”可下载标准字幕文件。
- 点击“导出 TXT 笔记”可下载带时间戳的笔记文件。
说明:TXT 笔记会沿用原脚本中的短句合并规则,把过短且时间间隔很近的语句合并在一起。
- 打开课程回放页。
- 先点击页面内的 “PPT” 标签,触发 PPT 数据请求。
- 当面板中“PPT 已就绪”亮起后,点击“导出 PPT 讲义”。
- 如果你还没有进入目标课程,也可以直接点击面板里的“打开课程中心”,跳转到
https://classroom.msa.buaa.edu.cn/courseCenter搜索全校课程;进入课程详情页后可下载课程视频。 - 脚本会打开一个新的打印页,并预加载图片。
- 加载完成后会自动唤起浏览器打印。
- 在打印窗口中可选择:
- 直接打印
- 或选择“另存为 PDF”
注意:
- 这不是直接生成 PDF 文件,而是打开浏览器打印页。
- 如果浏览器拦截了弹窗,需要允许当前站点弹窗后重试。
- 为了获得更合适的讲义排版,建议在打印设置中手动选择横向布局。
适用页面:classroom.msa.buaa.edu.cn/coursedetail*
进入课程详情页后:
- 页面顶部会出现一个工具条。
- 每一节课程标题下方会出现一组就地操作按钮。
每节课支持:
- 下载视频:根据该节课程的可用视频流生成下载。
- 预览视频:打开独立预览页查看该节视频流。
- 导出 PPTX:把该节的 PPT 图片打包为
.pptx文件。
页面顶部工具条支持:
- 下载全部视频
- 下载全部 PPT
说明:
- 某些课程如果平台状态不是可用状态,会显示为不可点击。
- 批量操作会连续触发多个下载,浏览器可能弹出多个下载确认。
- PPTX 导出依赖
PptxGenJS。 - 视频预览通过新页面打开,不再依赖额外的前端框架资源。
- 若你还没进入目标课程,可先访问
https://classroom.msa.buaa.edu.cn/courseCenter搜索全校课程,再进入相应课程详情页使用下载功能。
适用页面:spoc.buaa.edu.cn/*
进入页面后,脚本会尝试检测当前页面中的 <video> 播放器,并显示一个统一风格的悬浮面板。
-
状态与时长
- 检测是否找到播放器
- 显示视频总时长
- 显示当前播放位置与进度条
-
倍速快捷
- 提供常用倍速按钮:
1x、1.25x、1.5x、2x - 支持手动输入并应用自定义倍速
- 提供常用倍速按钮:
-
自动下一节
- 开关式启用
- 当当前视频播放结束后,尝试查找页面中的“下一节 / 下一课 / next”类入口并点击
- 如果找不到,会在日志中给出提示
-
视频链接工具
- 如果页面能读取到
video.currentSrc/source.src - 则可直接打开或复制当前视频链接
- 如果页面能读取到
-
日志面板
- 显示播放器检测、倍速设置、自动下一节结果等状态信息
- 脚本会按页面自动切换功能,不同页面出现的 UI 不同。
livingroom页面使用悬浮面板。coursedetail页面保留就地按钮,并增加顶部工具条。- 某些页面结构如果发生变化,按钮插入位置或“下一节”识别规则可能需要跟着调整。
- 若浏览器或站点策略阻止弹窗、下载或剪贴板访问,部分功能会受到影响。
buaa-spoc-helper.js:合并后的主脚本autoplay.js:历史参考脚本msa-download.js:历史参考脚本
- 没有出现悬浮窗怎么回事?
检查是否安装了对应浏览器版本的油猴插件以及权限有没有给足(详见截图紫框)
本项目基于 MIT License 开源。





