学习通课程任务助手

Created a day ago
Updated 8 hours ago
本地待办任务助手,支持平台完成确认、媒体恢复、队列管理、诊断导出和本地题库
#学习辅助
#超星学习通
#题库管理
#视频倍速
Statistics
Total Installs
45
Today's New
+1
User Rating
-
超星学习通课程助手,支持视频倍速播放、任务队列管理和本地题库匹配的浏览器脚本。

学习通课程助手

当前版本:2.6.0

学习通课程助手是一个脚本猫用户脚本。安装后,学习通课程页面右下角会出现控制面板,可统一查看课程任务点、视频、音频、题目和多个播放器页面的处理进度。

主要功能

  • 自动识别课程页面及 iframe 中的 HTML5 视频和音频。
  • 支持同一任务点中的多个播放器,全部完成后再进入下一任务点。
  • 默认播放倍速为 1x,可在控制面板调整为 0.5x16x
  • 进入课程详细页后,可自动打开第一个未完成任务点。
  • 当前任务完成并稳定一段时间后,自动进入下一节或目录中的下一个未完成项。
  • 从用户导入的本地题库中匹配单选、多选和文本题答案。
  • 记录没有匹配答案的题目,方便整理后重新导入。
  • 提供详细进度窗口,显示任务点、媒体、题目、iframe 状态和最近运行记录。
  • 处理脚本猫本地已存在的待办队列,并按课程和章节顺序执行。
  • 队列执行前再次识别任务点完成标记,已完成任务直接跳过。
  • 全局同一时间只播放一个视频,完成后再启动队列中的下一个视频。
  • 播放无进度或启动失败时自动重试,达到上限后暂停队列并显示原因。
  • 媒体在本地播放结束后继续等待学习通显示完成标记,平台未确认时不会提前完成待办。
  • 播放器重建或切换清晰度后自动重新接管,视频与音频按页面顺序单个播放。
  • 待办支持搜索、筛选、失败重试/跳过、课程折叠、截止提醒和 JSON/CSV 导出。
  • 多个学习通标签页自动选出一个主控,主控关闭后其他标签接管。
  • 题库支持 JSON 文件导入、格式预检和冲突统计,并扩展判断、下拉和多个填空题。
  • 日志支持分类、清空和脱敏诊断包导出;本地数据支持版本迁移、损坏备份和容量提示。
  • 待办窗口显示课程完成比例、最近失败原因、任务来源和完成依据。
  • 题库采用本地 JSON Provider,支持带 schema 的导入、未匹配导出和诊断版本记录。
  • 提供独立实时日志输出窗口,按时间正序显示彩色类型标签并自动滚动。

安装与启动

  1. 在浏览器中安装脚本猫扩展。
  2. 在脚本猫页面安装“学习通课程助手”,或把 XXT-ScriptCat.user.js 导入脚本猫。
  3. 登录学习通并打开课程页面。
  4. 点击页面右下角控制面板中的“启动”。

脚本会保存启动状态。下次打开匹配的课程页面时,会继续使用上次的设置。

控制面板

控件 作用
启动 / 暂停 开始或暂停当前待办队列和媒体处理
播放倍速 设置视频和音频的播放速度
详情页自动进入任务点 进入课程详情后打开第一个未完成任务点
待办列表 查看课程分组、排队和完成状态
查看进度 打开任务点、媒体、题目和 iframe 的详细状态窗口
日志输出 打开实时日志窗口,可暂停滚动、清空或导出文本日志
导入题库 导入本地 JSON 格式题库
未匹配题目 查看并导出题库中没有答案的题目

全新安装默认倍速为 1x。从旧版本升级时会保留之前设置的倍速,可直接在控制面板改为 1

本地待办队列

当前版本不再自动扫描课程首页,也不在课程之间自动刷新或跳转。待办窗口只执行脚本猫本地已经保存的任务;用户可在课程页面手动打开任务并使用控制面板处理。

待办窗口提供:

  • 排队、进行中和已完成数量。
  • 按课程分组的任务列表。
  • 任务类型、状态和“打开”入口。
  • 暂停/继续队列。

待办窗口预览

进度窗口

点击“查看进度”可以查看:

  • 当前任务点名称。
  • 当前页面可识别的任务点完成数和总数。
  • 已完成媒体数和媒体总数。
  • 已处理题目数、待处理题目数和未匹配题目数。
  • 主页面及各播放器 iframe 的独立状态。
  • 最近 8 条运行记录和更新时间。

任务点总数来自当前页面已经渲染的课程目录。目录处于折叠状态时,统计结果可能只包含当前已展开的部分。

进度窗口预览

题库格式

点击“导入题库”,粘贴一个 JSON 对象。题目作为键,答案作为值:

{
  "中国近代史的开端是?": "鸦片战争",
  "单选题示例": "A",
  "多选题示例": ["A", "C"],
  "填空题示例": "示例答案"
}

使用说明:

  • 单选题答案可填写选项字母或页面显示的选项文字。
  • 多选题答案使用 JSON 数组。
  • 填空题和文本题填写答案文字。
  • 题目采用标准化后的完整匹配和包含匹配。
  • 导入新题库时会与浏览器中已有题库合并。

数据与隐私

  • 题库、设置、未匹配题目和最近日志保存在脚本猫的本地存储中。
  • 本地已有待办的顺序和完成状态保存在脚本猫本地存储中。
  • 脚本不加载远程代码,也不上传题目、账号或课程数据。
  • 二维码登录、验证码和页面人工确认弹窗仍由用户处理。

常见问题

页面右下角没有控制面板

确认脚本猫中脚本已经启用,然后刷新学习通课程页面。脚本当前匹配学习通和学银在线域名。

视频没有开始播放

先点击“启动”,再查看进度窗口中的媒体数量。浏览器首次阻止自动播放时,可手动点击一次播放器的播放按钮。

多个视频时提前进入下一节

打开进度窗口,确认各子页面的媒体都已计入总数。媒体完成数达到总数并经过稳定等待后才会推进。

题目没有自动填写

点击“未匹配题目”查看题目是否已记录。补充答案后重新导入题库。页面题目模板发生变化时,等待后续脚本版本适配。

播放器提示“播放无进度”或“启动失败”

脚本会自动重试最多 3 次。网络恢复后点击“继续队列”会重置当前媒体并重新尝试;仍失败时可刷新课程页面或稍后再处理。

提示“平台尚未确认任务完成”

媒体播放结束后,脚本最多等待 30 秒让学习通更新任务完成状态。超时后队列会暂停,当前待办仍保持“进行中”。请确认页面网络和任务状态,再点击“继续队列”重新等待,不会直接跳到下一项。

版本更新说明

2.6.0

  • 修复最后一条本地待办完成后只更新状态、没有进入下一任务点的问题。
  • 待办完成与页面确认统一使用同一推进流程;点击失败时不会提前进入导航冷却。
  • 媒体和题目处理接入统一任务处理器接口,支持检测、执行、状态和取消。
  • iframe 工作状态增加只读附件描述,记录任务 ID、模块和通过状态。
  • 题目状态细分为发现、匹配、填写、提交和平台确认五个阶段。
  • 完成 B-001 至 B-005 借鉴清单并补齐对应测试与许可证记录。

2.5.0

  • 目录、媒体、完成标记和题目处理正式接入版本化平台适配器。
  • 媒体状态增加来源修订号和监听令牌,播放器切源时保留可诊断状态。
  • 待办窗口增加课程完成比例、待处理数、失败数和最近失败原因。
  • 题库升级为本地 JSON Provider,兼容旧格式并记录 schema/provider。
  • 待办 JSON 导出、诊断包和未匹配题目导出增加版本化结构。
  • 诊断导出前显示敏感字段检测摘要,用户可取消导出。

2.4.0

  • 删除已经下线但仍残留在脚本和测试中的课程扫描状态机、导航、展开、重试与暂停代码。
  • 增加版本化平台适配器接口,统一目录、媒体、完成标记和题目识别入口。
  • 待办描述统一写入 schema、数据来源和来源修订标识,便于后续模板升级。
  • 其他标签写入新主控租约时立即撤销当前媒体许可并暂停播放,减少短时双主控。
  • 诊断包进一步隐藏 URL 参数、手机号和长账号标识;导入题库后正确清理原始格式的未匹配题目。
  • 提取媒体暂停、空状态和队列异常暂停公共逻辑,减少重复代码。

2.3.0

  • 修复就绪播放器同一轮既点击播放按钮又调用 play() 导致的重复启动。
  • 播放许可证变化时立即暂停当前页面及 iframe 中所有非目标媒体,减少切换重叠。
  • 页面模板自检改用全部 iframe 的汇总状态,页面存在媒体时不再误报“页面模板待适配”。
  • 增加独立实时日志输出窗口,支持彩色类型标签、时间正序、自动滚动、暂停、清空和导出。
  • 增加就绪播放器单次启动、iframe 媒体汇总和日志窗口浏览器回归测试。

2.2.0

  • 同一媒体反复切源时只保留一个 ended 监听器,避免重复完成日志和旧状态闭包。
  • 待办窗口支持标题栏拖动,并记忆位置、尺寸、滚动和 SPA 重建后的可见状态。
  • 选择器自检增加 12 秒加载宽限期,慢页面恢复后自动取消误报。
  • 存储迁移只由实际控制器执行,避免顶层页面与 iframe 同时迁移旧待办。
  • 发布检查器移除用户目录绝对路径,支持项目依赖、环境 NODE_PATH-NodePath 参数。
  • 新增 V-005 至 V-009 五项专项浏览器测试。

2.1.0

  • 主控租约增加 claim ID、阶段和写后复读校验,强化多标签并发选举与失活接管。
  • GM 存储写入异常时保存带 revision 的本地回退值,后续读取优先使用最新回退数据。
  • 嵌套题目只保留最小可交互题块,避免父子容器重复填写和重复提交。
  • 跳过运行中待办时同步清理导航冷却、任务键、媒体许可和完成确认状态。
  • 增加上述四项专项浏览器回归测试。

2.0.0

  • 完成优化清单中仍有效的媒体、待办、多标签页、题库、日志、数据维护和发布检查项目。
  • 增加播放器重建/切源接管、音视频统一调度、媒体时间进度和六类异常提示。
  • 增加待办筛选、失败项操作、布局记忆、截止提醒与 JSON/CSV 导出。
  • 增加标签页主控租约、关闭接管以及账号/学期隔离待办。
  • 增加题库文件导入、扩展题型、日志筛选、诊断导出和选择器自检。
  • 增加存储版本迁移、过期分区清理、容量提示、损坏数据备份和一键发布检查。
  • 自动课程扫描及其速度、重试、导航测试继续保持下线。

1.7.0

  • 待办中的媒体本地结束后,必须等待学习通页面显示任务完成标记才会完成。
  • 等待期间控制面板显示“本地处理完成,等待平台确认”。
  • 30 秒仍未确认时自动暂停队列并保留当前待办,避免误跳下一任务。
  • 增加平台确认到达和确认超时两条浏览器回归测试。

1.6.1

  • 识别页面顶部“任务点已完成”状态提示。
  • 页面提示完成时,在媒体启动前自动跳过当前待办。
  • 增加页面级完成提示回归测试。

1.6.0

  • 移除登录后自动扫描课程、课程间自动刷新、扫描断点和扫描控制按钮。
  • 保留本地已有待办执行、任务完成识别、媒体控制、题目处理和详情页自动进入任务点。
  • 旧版本保存的扫描状态启动时自动转为手动模式,不再触发课程跳转。

1.5.1

  • 扫描课程目录时过滤带完成标记的任务点,包括折叠状态下的隐藏完成图标。
  • 待办激活后、媒体启动前再次核对当前任务完成状态。
  • 已完成任务直接更新待办状态并进入下一项,不重复播放或答题。
  • 增加已完成待办自动跳过回归测试。

1.5.0

  • 修复同学年另一学期课程被误纳入扫描的问题。
  • 增加新版课程、旧版课程、门户 iframe 和学银在线四组目录模板。
  • 修复课程卡片内公告/资源链接被误识别为课程入口的问题。
  • 扫描暂停、扫描异常和返回课程首页期间,所有 iframe 媒体同步停止并撤销播放许可。
  • 增加播放器无进度和启动失败检测,自动重试后暂停队列并支持恢复。
  • 修复旧账号或旧学期的已完成队列继续执行问题。
  • 目录超过稳定期限但仍在变化时进入重试,不再把半目录当作完整目录。
  • 修复隐藏完成标记、同课程不同章节被误判为未完成或当前任务的问题。
  • 删除未被用户文档引用的移动端临时预览图及其生成代码。
  • 回归测试扩展至 19 个测试函数。

1.4.0

  • 增加课程页面导航超时和目标课程 ID 校验,避免错页目录写入其他课程。
  • 首轮失败课程先排队,其他课程完成后统一重试一次。
  • 重试仍失败时显示课程名称与原因,支持重试本课程或跳过本课程。
  • 增加多级折叠章节分批展开、加载更多识别和页面滚动懒加载。
  • 增加展开次数、加载更多次数和稳定等待上限,避免异常页面循环点击。
  • 增加账号、学期、平台和课程列表指纹,环境变化后重新建立扫描。
  • 兼容 1.3.1 旧扫描断点,缺少新字段时自动补齐会话结构。
  • 浏览器回归扩展至 14 项。

1.3.1

  • 增加“暂停扫描 / 继续扫描”,主面板和待办窗口均可操作。
  • 保存扫描课程位置、已处理课程和已发现任务,刷新或中断后可从断点继续。
  • 扫描暂停期间停止待办执行和媒体播放,恢复扫描后自动衔接。
  • 目录改为稳定性检测,内容稳定后立即提取任务,减少逐门固定等待。
  • 主循环和课程跳转响应加快,空目录等待上限由 9 秒缩短至约 4.5 秒。
  • 增加扫描断点、刷新恢复、继续完成及数据保留的浏览器回归测试。

1.3.0

  • 登录后自动扫描本学期且尚未结课的课程。
  • 增加按课程首页和章节原始顺序生成的本地待办队列。
  • 增加待办窗口、课程分组、扫描进度和状态统计。
  • 扫描完成后默认立即执行,支持暂停、继续和手动重新扫描。
  • 媒体改为全局单播放器许可证,同一时间只播放一个视频。
  • 当前视频完成后才启动下一个媒体或待办任务。

1.2.3

  • 修复脚本猫隔离环境中构造 MouseEventview 参数类型转换失败的问题。
  • 恢复播放器中央按钮、选项和任务目录的模拟点击。
  • 增加代理 Window 环境下的播放器点击回归测试。

1.2.2

  • 修复已识别媒体但封面播放器始终停留在播放按钮的问题。
  • 增加 Video.js 中央播放按钮和常见播放器启动按钮识别。
  • 媒体 readyState = 0 时也会初始化播放器并按间隔重试。
  • 修复把 <video class="vjs-tech"> 自身当作按钮查找容器的问题。

1.2.1

  • 上传文件改为脚本猫可直接识别的 XXT-ScriptCat.user.js
  • 增加学习通根域名和学银在线根域名匹配。
  • 修复课程嵌入学校门户时只有 iframe 运行、页面没有控制面板的问题。
  • 增加 GM 接口异常时的本地存储兼容和可见启动错误提示。
  • 修复学习通单页切换或重建页面后控制面板消失的问题。

1.2.0

  • 全新安装的默认播放倍速调整为 1x
  • 增加详细进度窗口和课程任务点进度条。
  • 增加各 iframe 的媒体、题目、待处理状态和最近日志列表。
  • 修复页面全局样式影响控制面板按钮尺寸的问题。
  • 增加桌面并排和移动端完整进度层布局。

1.1.0

  • 重构主页面与 iframe 工作器之间的状态同步。
  • 支持同一任务点中的多个视频和多个播放器 iframe。
  • 增加课程详细页自动进入第一个未完成任务点。
  • 修复多选题重复点击、重复提交、隐藏视频阻塞和旧任务状态残留。
  • 增加任务加载等待、完成稳定等待、导航冷却和运行异常提示。

1.0.0

  • 增加课程页面控制面板。
  • 增加 HTML5 视频检测和倍速设置。
  • 增加本地 JSON 题库导入、题目匹配和未匹配题目导出。
  • 增加下一任务点自动推进。
Permissions & access
Capabilities
StorageMenu command