您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
简简单单打个满分,进入评教页面后按F5刷新,让表格填充到整个页面的时候,你就可以在表格上方看到自动评教按钮了
// ==UserScript== // @name 长江大学教务处自动评教 // @namespace bakaft // @version 1.1 // @description 简简单单打个满分,进入评教页面后按F5刷新,让表格填充到整个页面的时候,你就可以在表格上方看到自动评教按钮了 // @author BakaFT // @require https://unpkg.com/[email protected]/dist/axios.min.js // @match http://jwc3.yangtzeu.edu.cn/eams/quality/stdEvaluate.action // @icon data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw== // @grant none // @license MIT // ==/UserScript== (function () { 'use strict'; let father = document.querySelector("#semesterForm > div:nth-child(2)"); let button = document.createElement('button'); button.name = 'mybtn' button.innerHTML = '自动评教' button.type = 'button'; button.onclick = foo; father.appendChild(button); })(); function foo() { let queryParam = null let course = null let coursename = null let semesterid = document.querySelector("input[name='semester.id']").getAttribute('value') console.log("开始遍历课程") let courseTable = document.querySelector(".gridtable").children[1] let numsOfCourse = courseTable.children.length console.log("共" + numsOfCourse + "门课程需要评教") for (let index = 0; index < numsOfCourse; index++) { course = courseTable.children[index]; coursename = "(" + course.children[2].innerHTML + ")" + course.children[1].innerHTML console.log("当前课程:" +coursename) // 这意味着未评教 if (course.children[5].firstChild.nodeType == 1) { console.log("课程尚未评教,正在发送请求") queryParam = new URLSearchParams(course.lastChild.firstChild.href.split('action')[1]) makeRequest(queryParam.get('teacher.id'), semesterid, queryParam.get('evaluationLesson.id'),coursename) } else { console.log("课程已被评教过,跳过") } } alert("评教完了,刷新看看") } function makeRequest(teacherid, semesterid, evaluationLessonid,coursename) { console.log('评教中...') let params = new URLSearchParams(); params.append('teacher.id', teacherid) params.append('semester.id', semesterid) params.append('evaluationLesson.id', evaluationLessonid) params.append('result1_0.questionName', '\u6559\u5E08\u4E3A\u4EBA\u5E08\u8868\u3001\u6CBB\u5B66\u6001\u5EA6\u4E25\u8C28') params.append('result1_0.content', '\u6EE1\u610F') params.append('result1_0.score', '20') params.append('result1_1.questionName', '\u6559\u5B66\u5185\u5BB9\u5145\u5B9E\uFF0C\u7406\u8BBA\u8054\u7CFB\u5B9E\u9645') params.append('result1_1.content', '\u6EE1\u610F') params.append('result1_1.score', '20') params.append('result1_2.questionName', '\u5E08\u751F\u4E92\u52A8\uFF0C\u8BFE\u5802\u7BA1\u7406\u4E25\u683C') params.append('result1_2.content', '\u6EE1\u610F') params.append('result1_2.score', '20') params.append('result1_3.questionName', '\u6559\u5B66\u8D28\u91CF\u4E0E\u6548\u679C\u7684\u603B\u4F53\u8BC4\u4EF7') params.append('result1_3.content', '\u6EE1\u610F') params.append('result1_3.score', '40') params.append('result1Num', '4') params.append('result2Num', '0') axios.post('/eams/quality/stdEvaluate!finishAnswer.action', params) .then(function (response) { // handle success console("评教成功:"+coursename) }) .catch(function (error) { // handle error console.log(error); }) .then(function () { // always executed }); }