Skip to content

旨在自动化填写中国科学院大学(UCAS)选课系统中的 **课程评估** 和 **教师评估** 表单。

Notifications You must be signed in to change notification settings

Toconquer1/UCASEvaluateCourse

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 

Repository files navigation

UCAS 自动填写评估表单脚本

这是一个油猴(Tampermonkey)脚本,旨在自动化填写中国科学院大学(UCAS)选课系统中的 课程评估教师评估 表单。

✨ 功能特性

  • 自动评分: 自动为所有评分类型的题目选择最高分选项(通常是 "非常满意" 或 value="5" 的单选按钮)。
  • 自动填写主观题: 根据预设的答案列表,按顺序自动填充页面上的所有主观题文本框 (<textarea>)。
    • 脚本内置了适用于课程评估和教师评估的默认文本。
  • 自动选择非评分题: 自动选择非评分区域(通常指评分表格之外的题目)的单选题和多选题的第一个选项
  • 调试信息: 在浏览器开发者控制台输出执行日志,方便追踪脚本运行状态和排查问题。

🚀 使用方法

  1. 安装并启用 Tampermonkey 浏览器扩展。
  2. 点击浏览器工具栏上的 Tampermonkey 图标。
  3. 选择 “添加新脚本...”
  4. 将本脚本的完整代码复制粘贴到 Tampermonkey 编辑器中。
  5. 点击编辑器菜单中的 “文件” -> “保存”(或直接按 Ctrl + S)。
  6. 确保脚本在 Tampermonkey 的“已安装脚本”列表中处于启用状态。

如何运行

  1. 登录 UCAS 选课系统。
  2. 导航至需要填写的课程评估教师评估页面。
  3. 当页面加载完成后,该脚本将自动运行:
    • 评分题将被设为最高分。
    • 主观题文本框将被填入预设内容。
    • 非评分选择题的第一个选项将被勾选。
    • (教师评估页)光标将聚焦在验证码输入框。
  4. 请务必检查脚本自动填写的内容,特别是主观题部分,确保其符合你的意愿(可在脚本代码中修改默认答案)。

🛠️ 脚本原理

脚本主要通过 JavaScript 操作网页的 DOM (文档对象模型) 来实现自动化:

  1. 匹配页面: 通过脚本头部的 @match 规则,脚本管理器(如 Tampermonkey)确保该脚本只在指定的 UCAS 评估页面上运行。
  2. 识别页面类型: 通过检查当前页面的 URL (window.location.href) 是否包含 /evaluate/evaluateCourse//evaluate/evaluateTeacher/ 来判断是课程评估还是教师评估。
  3. 选择最高分: 使用 document.querySelectorAll('input[type="radio"][value="5"]') 找到所有代表最高分的单选按钮,并将其 checked 属性设为 true
  4. 填写主观题:
    • 使用 document.querySelectorAll('textarea') 获取页面上所有的文本域元素。
    • 根据预定义的答案数组 (courseTextareaAnswersteacherTextareaAnswers) 和文本域在页面中出现的顺序(索引 index),将对应的答案赋值给文本域的 value 属性。
  5. 选择非评分题第一个选项:
    • 获取所有单选框和复选框 (input[type="radio"], input[type="checkbox"])。
    • 通过 input.closest('table.table-bordered') === null 过滤掉位于主评分表格内的选项。
    • 将剩余的选项按其 name 属性进行分组。
    • 对于每个分组(代表一个问题),将其第一个选项 (group[0]) 的 checked 属性设为 true
  6. 错误处理与日志: 使用 try...catch 块包裹可能出错的操作,并通过 console.log, console.warn, console.error 在开发者控制台输出信息。

⚠️ 注意事项

  • 主观题内容: 脚本中预设的主观题答案仅为通用模板。强烈建议用户根据自己的真实想法,在脚本代码中修改 courseTextareaAnswersteacherTextareaAnswers 数组的内容。
  • 非评分题默认选项: 脚本默认选择非评分题的第一个选项。如果这不是你期望的默认行为,需要修改脚本的相关逻辑。
  • 系统更新: 如果 UCAS 评估系统的页面结构(HTML 元素、ID、类名、布局等)发生变化,脚本可能失效。届时需要根据新的页面结构更新脚本代码。如果遇到问题,可以尝试按 F12 打开浏览器开发者工具查看控制台是否有报错信息。
  • 负责任使用: 请合理使用本脚本以节省时间,并确保提交的评估内容基本符合实际情况或已做相应修改。

About

旨在自动化填写中国科学院大学(UCAS)选课系统中的 **课程评估** 和 **教师评估** 表单。

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published