为“学在浙大”课程页面补充作业成绩与班级统计信息的 Tampermonkey 脚本。

- 读取当前登录账号的作业提交状态和个人成绩。
- 读取班级平均分、最高分、最低分;点击成绩标签即可展开查看。
- 按活动 ID 精确匹配成绩、统计与页面作业,避免按标题或顺序导致错位。
- 支持课程内容页、作业列表页、全屏活动页右侧正文、作业详情提交记录和“我的主页”。
- 适配单页应用切换,切换课程或活动后自动刷新。
- 仅显示
homework作业;问卷、文件、资料不会添加标签。
- 不修改原内容:保留平台原有文字和官方成绩,仅在合适位置追加色块。
- 保留页面布局:统计信息向右展开,不改变原有行高;空间不足时自动换行。
- 状态直观:绿色为已有成绩,黄色为已提交但暂未查询到成绩,红色为未提交。
- 统一操作:点击单个标签查看统计或提示;右下角可一键展开或收起当前页面全部标签。
- 重视隐私:仅使用浏览器当前登录状态访问学在浙大同源接口,不上传账号、Cookie 或成绩数据。
全屏活动页左侧目录不显示标签,避免与右侧当前活动重复。
推荐通过 Greasy Fork 安装 ZJUSCORE。
也可以使用 Chrome + Tampermonkey 本地安装:
- 安装 Tampermonkey。
- 新建脚本,将
zjuscore.user.js的完整内容粘贴并保存。 - 登录
courses.zju.edu.cn后打开课程页面;已有页面可强制刷新。
/api/course/<课程ID>/activity-reads-for-user
/api/courses/<课程ID>/activities
个人成绩来自 activity_reads[].data.score;班级统计来自活动的 average_score、highest_score、lowest_score 字段。课程未返回班级统计时,个人成绩标签仍会正常显示。
- 平台未返回活动记录或页面无法可靠识别活动 ID 时,脚本保持静默,避免成绩错位。
- 部分官方公开成绩不在个人活动记录接口中;此类成绩以平台页面原有显示为准。
- 作业详情有多次提交时,活动级成绩显示在时间最新的一次提交记录旁。
修改后可执行:
node --check zjuscore.user.js
git diff --check作者:GitHub @bfyes
欢迎通过本仓库 Issues 反馈页面链接、浏览器版本、预期结果和实际结果。请勿提交账号密码、Cookie 或完整个人信息。