新版正方教务管理系统自动评教脚本

发布于 / JavaScript / 3 条评论

本脚本适用于新版正方教务管理系统学生评教页面。

使用注意:

1,本脚本必须在Chrome内核浏览器使用,其余内核(IE,Edge等)无法使用!

2,如果您使用的是360浏览器/QQ浏览器/百度浏览器等等多内核的浏览器,请务必调至极速模式。不知道急速模式怎么调,请看图:

image.png3,多数手机不可以评教,请使用电脑

4,本脚本仅在财大16信科班测试通过,其他班级尚未测试,如果有问题,请留言反馈。

使用方法:

1,进入教务系统,找到你评教的页面:

image.png

2,按下F12,会弹出控制台。点击Console选项卡(图中红色圈圈),然后在下面空白处(图中画红线的地方)

image.png

输入如下代码:

function fuck_all(a){var b,c;if(0==document.getElementsByClassName("form-control").length)setTimeout(function(){fuck_all(a)},50);else{for(b=document.getElementsByClassName("tr-xspj").length,c=0;b>c;c++)0==c?document.getElementsByClassName("tr-xspj")[c].getElementsByClassName("radio-pjf")[1].checked=!0:document.getElementsByClassName("tr-xspj")[c].getElementsByClassName("radio-pjf")[0].checked=!0;document.getElementsByClassName("form-control")[0].value="老师人非常好,讲课好,对学生好,从不拖堂,各方面都很优秀,我贼拉喜欢~"+Math.random(),document.getElementById("btn_xspj_bc").click(),ojbk(a)}}function change_page(a){var b=document.getElementById("jxb_body").getElementsByTagName("tr").length;return b>a?(0==document.getElementsByClassName("tr-xspj").length?setTimeout(function(){change_page(a)},50):(document.getElementById("jxb_body").getElementsByTagName("tr")[a].click(),fuck_all(a+1)),void 0):(null==document.getElementById("btn_xspj_tj")?setTimeout(function(){change_page(a)},50):(alert("点击确定即可完成评价~\n程序作者:斐斐\n主页:https://www.mmuaa.com"),document.getElementById("btn_xspj_tj").click()),void 0)}function ojbk(a){null==document.getElementById("btn_ok")?setTimeout(function(){ojbk(a)},50):(console.log(document.getElementsByClassName("info")[0].getElementsByTagName("td")[1].innerHTML+"OK"),document.getElementById("btn_ok").click(),change_page(a))}try{change_page(0)}catch(err){alert("出错了。请把下面的信息发给我:\n"+err)}

然后回车

就好了。

=======================================教程结束==========================================




如果你希望了解本代码的原理,请继续往下看。

上面的代码经过了压缩,以下是带注释未压缩的代码

function fuck_all(iter){  //处理当前页面
  if(document.getElementsByClassName('form-control').length == 0)  //网页尚未准备好
    setTimeout(function(){  //调用定时器,加参回调自身
      fuck_all(iter);
    }, 50);
  else{
    var need_fuck = document.getElementsByClassName('tr-xspj').length;  //评价个数
    for(var i = 0; i < need_fuck; i++){
      if(i == 0) document.getElementsByClassName('tr-xspj')[i].getElementsByClassName('radio-pjf')[1].checked=true;
      else document.getElementsByClassName('tr-xspj')[i].getElementsByClassName('radio-pjf')[0].checked=true;
    }
    //随机评语
    document.getElementsByClassName('form-control')[0].value = "老师人非常好,讲课好,对学生好,从不拖堂,各方面都很优秀,我贼拉喜欢~" + Math.random();
    //模拟点击
    document.getElementById('btn_xspj_bc').click();
    ojbk(iter);  //点击确定按钮
  }
}
//翻页函数
function change_page(i){
  var need_fuck = document.getElementById('jxb_body').getElementsByTagName('tr').length;  //需要干掉的老师
  if(i < need_fuck){  //没到头,继续
    if(document.getElementsByClassName('tr-xspj').length == 0)  //上次提交尚未保存完毕
      setTimeout(function(){  //调用定时器,回调自身
        change_page(i);
      }, 50);
    else{
      document.getElementById('jxb_body').getElementsByTagName('tr')[i].click();  //跳转到这个老师
      fuck_all(i+1);  //评价当前老师
    }
  }else{
    if(document.getElementById('btn_xspj_tj') == null)  //确定按钮尚未加载出来
      setTimeout(function(){  //调用定时器,回调自身
        change_page(i);
      }, 50);
    else{
      alert("点击确定即可完成评价~\n程序作者:斐斐\n主页:https://www.mmuaa.com");
      document.getElementById('btn_xspj_tj').click();
    }
    return;
  }
}
//确认函数
function ojbk(iter){
  if(document.getElementById('btn_ok') == null){  //尚未保存成功
    setTimeout(function(){  //调用定时器,回调自身
      ojbk(iter);
    }, 50);
  }else{
    console.log(document.getElementsByClassName('info')[0].getElementsByTagName('td')[1].innerHTML+"OK");
    document.getElementById('btn_ok').click();
    change_page(iter);
  }
}
//程序入口
try{
  change_page(0);
}catch(err){
  alert("出错了。请把下面的信息发给我:\n" + err);
}

转载原创文章请注明,转载自: 斐斐のBlog » 新版正方教务管理系统自动评教脚本
  1. 烤肉君

    啊!!太感谢了!!TAT

  2. 大海里有只宰

    没有什么

  3. 大海里有只宰

    没有什么