您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
WHU Gpa Calculator which will remove unrelated courses and calculate your gpa automatically.
// ==UserScript== // @name WHU Gpa Calc // @license GPLV3 // @namespace https://github.com/liaosunny123/WHUGpaCalc // @version 1.0.0 // @description WHU Gpa Calculator which will remove unrelated courses and calculate your gpa automatically. // @author EpicMo // @match https://jwgl.whu.edu.cn/cjcx/cjcx_cxDgXscj.html?gnmkdm=N305005* // @require https://code.jquery.com/jquery-3.6.1.min.js // ==/UserScript== (async function() { //void conflict with the default JQ of the page window.jQuery361 = $.noConflict(true) //get the archivement element group var classArrs = [] var gpa = 0.0 function gpaCalc(classArrs){ var sum = 0.0 var sumStandardScore = 0.0 classArrs.forEach(sp => { if(sp.type == '通识教育选修'){ return; } sum += parseFloat(sp.score) * parseFloat(sp.standardScore) sumStandardScore += parseFloat(sp.standardScore) }) return sum / sumStandardScore } function sleep(ms) { return new Promise(resolve => setTimeout(resolve, ms)) } var arrs = $('#tabGrid').children().children('.ui-row-ltr') //await sleep(5000) async function getScore(){ var count = 0 while(count <= 21){ if(arrs.length == 0){ await sleep(500) arrs = $('#tabGrid').children().children('.ui-row-ltr') count++ }else{ arrs = $('#tabGrid').children().children('.ui-row-ltr') break } } if(count == 21){ return 4.0 }else{ $.each(arrs, function(index, value){ var cell = $(value).children() var classArr = { classNo: $(cell[3]).text(), className: $(cell[4]).text(), standardScore: $(cell[6]).text(), score: $(cell[9]).text(), type: $(cell[5]).text() } Object.assign(classArrs, {[index]: classArr}) }) return gpaCalc(classArrs) } } gpa = (await getScore()) console.log('GPA Calc: ' + gpa) var span = $('<span>有效绩点:' + gpa.toFixed(2) +' </span>') $('.col-sm-2').children().before(span) document.getElementById('search_go').addEventListener('click', async function(){ console.log('GPA Calc: ' + (await getScore())) $('.col-sm-2').children().eq(0).text('有效绩点:' + (await getScore()).toFixed(2) + ' ') }) })()
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址