BUAA-北航-自动评教代码

  • 修复了参考代码中卡在是否推荐这一步无法继续运行的 Bug
  • 适用于北航教务系统,校内网和VPN均可使用

  • 截止本文发出前该代码仍可正常使用

代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
javascript: function judge() {
doc = window.top.document.getElementById("iframename").contentWindow;
doc.alert = function () {
return true;
};
doc.confirm = function () {
return true;
};
var arr = [0, 0, 0, 0, 0, 0];
while (arr[0] === arr[1] && arr[2] === arr[3] && arr[4] === arr[5] && arr[1] === arr[2]) {
for (let i = 0; i < 6; i++) {
arr[i] = Math.floor(Math.random() * 3);
}
}
a = doc.$("input[name^=tabmapzb]");
b = doc.$("span.yellow");
if (a.length !== 0) {
for (let i = 0; i < 6; i++) {
a[arr[i] + i * 5].click();
}
doc.$("#sftj").get(0).selectedIndex = 1;
doc.tj();
} else {
b[1].firstElementChild.click();
}

}
doc = window.top.document.getElementById("iframename").contentWindow;
setInterval("doc.$.onload = judge()", 1400);

使用方法

  1. 使用 Chrome 浏览器打开评教页面

    打开教务管理系统 —> 教学评价 —> 学生评教 —> 开始评教

  2. 将此时浏览器地址栏的内容清空,并将上述代码复制到地址栏,并在代码的最开始加上

    1
    javascript:

    回车即可。

    注意:代码最开始虽然有javascript:,但是复制过去后就没了,所以需要我们手动加上

代码说明与自定义

  1. 评教的效果是从前三项 优秀良好中等三者中随机生成的,而且保证不会出现全选一个等级的情况(全选一个等级是提交不上的)

    如果需要修改,可把代码第12行

    1
    arr[i] = Math.floor(Math.random() * 3);

    中的3 改成 n(1 < n <= 5),意思是从前 n项中随机生成

  2. 是否推荐选的是

    需要修改的话在第21行

    1
    doc.$("#sftj").get(0).selectedIndex = 1;

    0 改为 1 表示选择不推荐

  3. 用完记得关闭评教页面

  4. 别的浏览器大概支持吧(选的课太少了,没机会试了(:з)∠)

参考资料

分享一份自动评教代码

坚持原创技术分享,感谢您的支持和鼓励!