// ==UserScript== // @name HEU_SCORE // @namespace Xiuchen // @version 0.3 // @description used to calculate average scores for HEU students // @author Xiuchen // @match https://edusys.wvpn.hrbeu.edu.cn/jsxsd/kscj/cjcx_list // @match http://edusys.hrbeu.edu.cn/jsxsd/kscj/cjcx_list // @grant none // @require https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js // @downloadURL https://update.greasyfork.icu/scripts/424514/HEU_SCORE.user.js // @updateURL https://update.greasyfork.icu/scripts/424514/HEU_SCORE.meta.js // ==/UserScript== (function() { 'use strict'; //alert("正在计算均分"); var list = document.getElementById("dataList"); var avg = 0, cnt = 0; if(list.rows.length > 1 && list.rows[1].cells[0].innerHTML != "未查询到数据"){ var sum_score = 0, sum_cre = 0; for(var i = 1; i < list.rows.length; i++){ var tmp = list.rows[i]; var sc; if(tmp.cells[4].getElementsByTagName("a")[0] == undefined) sc = tmp.cells[4].innerHTML; else sc = tmp.cells[4].getElementsByTagName("a")[0].innerHTML; var cre = parseFloat(tmp.cells[5].innerHTML); if(sc == "---"){ cnt++; continue; } else if(sc == "优秀") sc = 95; else if(sc == "良好") sc = 85; else if(sc == "中等") sc = 75; else if(sc == "及格") sc = 65; else if(sc == "不及格"){ cnt++; continue; } else if(sc < 60){ cnt++; continue; } sum_score += sc * cre; sum_cre += cre; } avg = sum_score / sum_cre; avg = avg.toFixed(2); } $("body").append("