西电使用油猴脚本自动评教
又到了学期末,想必评教是每年的保留节目了(消息服务A:您有新的评教问卷*infinity)。
一般情况下,大部分老师真的没有什么不好的地方,也就是大部分老师我们的评价都会给到满意。但是这大量重复的操作真的非常麻烦。就让我们不由得想到:能不能写一个Javascript脚本来解决这个问题?
同时我们知道,西电的一站式等网站都有禁F12等反调试限制,那么油猴脚本就是最省事的最简单的解决办法。
Chrome/Edge浏览器下载插件
以谷歌浏览器举例:可以在以下网站下载插件(谷歌商店需要魔法上网)。
如果你使用的是 Edge 浏览器,可以直接在自带的 Edge 扩展商店(Add-ons)中搜索安装,无需魔法。
然后搜索“油猴”、“篡改猴”或“Tampermonkey”等关键词,就可以下载插件:

添加脚本
下载好插件后,点击插件:

点击添加新脚本:

删去原本的所有内容(Ctrl+A全选删去)

复制以下脚本:
1 | // ==UserScript== |
添加完脚本后记得保存(如使用 Ctrl + S)。
最后一步,在浏览器插件的管理页面,找到篡改猴的详细内容,选择允许用户运行脚本:

打开脚本,插件就会在你进入评教页面的时候自动注入评教数据。
注意:进入后需要刷新重进,若是一次没有成功就重复以上操作。

就可以自动完成评教了!如果有需要,单独老师再手动修改。
其他学校
对于其他的学校,你可能需要修改以下部分以适配你们学校的教务系统:
- 匹配网址 (
@match):最重要的部分!将脚本头部的@match *://ehall.xidian.edu.cn/jwapp/sys/wspjyyapp/*替换为你们学校评教网页的 URL,支持使用通配符*。 - 分数选项的选择器:脚本中的
document.querySelectorAll('[data-x-bl="100"]')是定位“非常满意”按钮的。你需要按下F12审查页面元素,根据你们学校网页的具体结构,把[data-x-bl="100"]替换成对应的标签属性或 Class。 - 评语框的选择器:同理,修改
document.querySelectorAll('.bh-txt-input__txtarea'),替换为你们学校评语输入框的对应选择器。 - 保存/提交按钮的选择器:将
document.querySelector('[data-action="保存"]')替换为实际提交按钮的代码规则。
根据以上几点找出你们系统上的关键元素,并在代码中相应替换后,这个脚本就同样适用于你的学校了!
如果在修改中遇到无法响应的问题,可以检查下针对不同前端框架的事件触发(即代码中的 dispatchEvent 模拟输入触发部分)是否有其他更深层的校验限制。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 F1fk3r's Blog!
评论