功能
帮你点击查询,当查询到课程后自动选择课程提交。
用法
请提前准备课程的课程号和课序号(一般为01)
- 登录教务处,进入选课页面,建议选择“自由选课”栏。
- 按下F12,选择控制台页面,将以下代码复制粘贴回车。
- 留意页面屏幕上方窗口,输入提示内容。
- 完成后若观察到查询按钮每间隔一段时间后被点击,表示成功。
- 等待...课程拥有课余量后将会自动选择提交
let kch, kxh, time;
do {
kch = prompt("课程号", "");
}while (kch == "")
do {
kxh = prompt("课序号", "01");
}while (kxh == "")
time = +prompt("查询间隔", "1500");
const submit = document.querySelector("#submitButton");
const ifr_doc = document.querySelector("#ifra").contentDocument;
const botton = ifr_doc.querySelector("#queryButton");
const input_kch = ifr_doc.querySelector("#kch");
input_kch.value = kch;
const target = {kch, kxh};
function check() {
const list = ifr_doc.querySelectorAll("#xirxkxkbody>tr");
if (list[0].firstChild.firstChild.nodeType == 3) {
return;
}
list.forEach((elem) => {
if (elem.childNodes.length != 2) {
const message = JSON.parse(elem.firstChild.firstChild.firstChild.value);
if (message.kch === target.kch & message.kxh === target.kxh) {
if (elem.firstChild.firstChild.firstChild.checked === false) {
elem.firstChild.firstChild.firstChild.click();
clearInterval(time_id);
submit.click();
}
}
}
})
}
let time_id = setInterval(() => {
botton.click();
check();
},time);
请勾选“有课余量的课程”,否则将提交错误。
若想选多个课程,请多开选课页面执行上述操作。
操作完成后,不关闭控制台页面和抢课页面即可,可放后台。
历史
- 2024-6-18 有效
...