// ==UserScript== // @name 🏆超星学习通九九助手|继续教育|学银在线|图片题|考试|后台自动挂机|视频文档|章节测验|不占网速🏆 // @name:zh-TW 🏆超星學習通九九助手|繼續教育|學銀在線|圖片題|考試|後台自動掛機|視頻文檔|章節測驗|不佔網速🏆 // @name:en 🏆Chaoxing Automatic Learning Tool|Pictures|Exam|Background Process|Video&Document|Chapter Test🏆 // @description 【免挂机】【99%正确率】支持闯关模式🚩考试📃视频📺直播▶️章节测试📝文档📚作业📔单页面静音运行,可最小化挂机->不占网速,放心追剧<-对接千万级题库,题目覆盖率99%,题目答案实时收录,轻松拿高分 // @description:zh-TW 【免掛機】【99%正確率】支援闖關模式🚩考試📃視訊📺直播▶️章節測驗📝文檔📚作業📔單頁靜音運行,可最小化掛機->不佔網速,放心追 萬級題庫,題目覆蓋率99%,題目答案即時收錄,輕鬆拿高分 // @description:en 【Background Process】【Correct rate 99%】Breakthrough mode supported🚩Exam📃Video📺Live▶️Chapter Test📝Document📚Home Work📔Muted process job in singal page,Minimize hangup->Bandwidth Saving<-Connect to tens of millions of question banks,keep your correct rate in 99%,Easy to get high score // @antifeature payment 脚本会请求第三方收费题库进行答题,您可以选择付费或停用答题功能 // @antifeature:zh-TW payment 腳本會請求第三方收費題庫進行答題,您可以選擇付費或停用答案功能 // @antifeature:en payment The script will request a third-party paid question bank to answer questions. You can choose to pay or disable the answering function. // @namespace 申禅姌 // @version 1.5.9 // @author 申禅姌 // @run-at document-end // @storageName 申禅姌 // @match *://*/* // @icon http://pan-yz.chaoxing.com/favicon.ico // @grant unsafeWindow // @grant GM_xmlhttpRequest // @grant GM_setValue // @grant GM_getValue //👇👇👇👇👇👇👇👇Please fill in the code prompted by the script into the blanks below, one per line, and press Ctrl+S to save.👇👇👇👇👇👇👇👇 //👇👇👇👇👇👇👇👇請將腳本提示的程式碼填入下面空白中,一行一個,按Ctrl+S儲存👇👇👇👇👇👇👇 //👇👇👇👇👇👇👇👇请将脚本提示的代码填入下面空白中,一行一个,按Ctrl+S保存👇👇👇👇👇👇👇👇 //👆👆👆👆👆👆👆👆请将脚本提示的代码填入上面空白中,一行一个,按Ctrl+S保存👆👆👆👆👆👆👆👆 //👆👆👆👆👆👆👆👆請將腳本提示的程式碼填入上面空白中,一行一個,按Ctrl+S儲存👆👆👆👆👆👆👆 //👆👆👆👆👆👆👆👆Please fill in the code prompted by the script into the blanks above, one per line, and press Ctrl+S to save.👆👆👆👆👆👆👆 // @connect mooc1.chaoxing.com // @connect mooc1-1.chaoxing.com // @connect mooc1-2.chaoxing.com // @connect mooc1-api.chaoxing.com // @connect stat2-ans.chaoxing.com // @connect passport2.chaoxing.com // @connect zhibo.chaoxing.com //---------------------------------------- // @connect mooc1.hnust.edu.cn // @connect stat2-ans.hnust.edu.cn // @connect passport2.hnust.edu.cn // @connect zhibo.hnust.edu.cn //---------------------------------------- // @connect mooc1.hnsyu.net // @connect stat2-ans.hnsyu.net // @connect passport2.hnsyu.net // @connect zhibo.hnsyu.net //---------------------------------------- // @connect mooc1.gdhkmooc.com // @connect stat2-ans.gdhkmooc.com // @connect passport2.gdhkmooc.com // @connect zhibo.gdhkmooc.com //---------------------------------------- // @connect mooc1.zut.edu.cn // @connect stat2-ans.zut.edu.cn // @connect passport2.zut.edu.cn // @connect zhibo.zut.edu.cn //---------------------------------------- // @connect mooc1.wljx.hfut.edu.cn // @connect stat2-ans.wljx.hfut.edu.cn // @connect passport2.wljx.hfut.edu.cn // @connect zhibo.wljx.hfut.edu.cn //---------------------------------------- // @connect mooc1.hncj.edu.cn // @connect stat2-ans.hncj.edu.cn // @connect passport2.hncj.edu.cn // @connect zhibo.hncj.edu.cn //---------------------------------------- // @connect mooc1.qutjxjy.cn // @connect stat2-ans.qutjxjy.cn // @connect passport2.qutjxjy.cn // @connect zhibo.qutjxjy.cn //---------------------------------------- // @connect mooc1.jxjyzx.xust.edu.cn // @connect stat2-ans.jxjyzx.xust.edu.cn // @connect passport2.jxjyzx.xust.edu.cn // @connect zhibo.jxjyzx.xust.edu.cn //---------------------------------------- // @connect mooc1.xueyinonline.com // @connect stat2-ans.xueyinonline.com // @connect passport2.xueyinonline.com // @connect zhibo.xueyinonline.com //---------------------------------------- // @connect mooc1.cqrspx.cn // @connect stat2-ans.cqrspx.cn // @connect passport2.cqrspx.cn // @connect zhibo.cqrspx.cn //---------------------------------------- // @connect mooc1.ynny.cn // @connect stat2-ans.ynny.cn // @connect passport2.ynny.cn // @connect zhibo.ynny.cn //---------------------------------------- // @connect mooc1.cugbonline.cn // @connect stat2-ans.cugbonline.cn // @connect passport2.cugbonline.cn // @connect zhibo.cugbonline.cn //---------------------------------------- // @connect mooc1.xust.edu.cn // @connect stat2-ans.xust.edu.cn // @connect passport2.xust.edu.cn // @connect zhibo.xust.edu.cn //---------------------------------------- // @connect mooc1.xynu.edu.cn // @connect stat2-ans.xynu.edu.cn // @connect passport2.xynu.edu.cn // @connect zhibo.xynu.edu.cn //---------------------------------------- // @connect api.axetk.cn // @connect api.tk.icu // @connect 127.0.0.1 // @license MIT // @compatible firefox // @compatible chrome // @compatible edge // @supportURL https://tiku.tk.icu/ // @downloadURL none // ==/UserScript== !!(function () { const //--------------------------------------------------------------------------- 是否启用后台服务器 = '0',//改为1则启用后台服务器,请先学习使用方法:https://bbs.tampermonkey.net.cn/thread-5249-1-1.html //Change 1/0 to enable background program,Please learn how to use it:https://bbs.tampermonkey.net.cn/thread-5249-1-1.html 服务器地址 = '127.0.0.1',//用于对接后台服务器,不懂不要修改 //Do not change this if you don't know how it works 端口 = '6503'; //后台服务器端口,不懂不要修改 //Do not change this if you don't know how it works //--------------------------------------------------------------------------- let payHost = '', $strs, $w = unsafeWindow, $l = $w.location.href, $d = $w.document, $version = GM_info.script.version.replaceAll('.', ''), $s = Object.fromEntries(new URLSearchParams($w.location.search)), $protocol = $w.location.protocol + "//", $layer = (info)=>{ const body = $d.body; const shadow = $d.createElement('div'); const alert = $d.createElement('div'); const alertHead = $d.createElement('div'); const alertBody = $d.createElement('div'); const buttons = $d.createElement('div'); const button = $d.createElement('span'); shadow.classList.add('shadow'); alert.classList.add('alert'); alertHead.classList.add('alertHead'); alertBody.classList.add('alertBody'); buttons.classList.add('buttons'); button.classList.add('button'); alertHead.innerHTML = '提示' alertBody.innerHTML = info; button.innerHTML = '确定'; button.addEventListener('click',()=>{ shadow.remove(); alert.remove(); }); buttons.appendChild(button); alert.appendChild(alertHead) alert.appendChild(alertBody) alert.appendChild(buttons) body.appendChild(shadow); body.appendChild(alert); }, $ascii = (str) => { return str.split('').sort((a, b) => a.charCodeAt(0) - b.charCodeAt(0)).join(''); }, getCookie = name => `; ${document.cookie}`.split(`; ${name}=`).pop().split(';').shift(), entrance = (host) => { let classId = $s['clazzid'] || $s['classid'] || $s['classId'] || $s['classId'], courseId = $s['courseid'] || $s['courseId'], cpi = $s['cpi'] || '', courseName = $d.title.replace('-首页', ''); $w.location.href = host + `/mooc-ans/course/${$version}.html?ut=s&classid=` + classId + '&courseid=' + courseId + '&cpi=' + cpi + '&coursename=' + courseName; }, $uid = getCookie('UID') || getCookie('_uid'), randomString = (l = 32) => { let t = "abcdef1234567890", a = t.length, n = ""; for (let i = 0; i < l; i++) n += t.charAt(Math.floor(Math.random() * a)); if (['', false, null, undefined, NaN, -1].includes(n)) { n = ''; for (let i = 0; i < l; i++) n += t[Math.floor(Math.random() * 16)]; } return n }, $n = function (min, max) { if (arguments.length == 1) { max = min + 1; if (min > 1) { min = min - 1 } } else if (arguments.length == 0) { min = 4; max = 6; } return ( Math.random() * ( max - min ) + min ).toFixed(3) * 1000; }, sleep = (interval) => { return new Promise((success, fail) => { setTimeout(success, interval); }); }, hostList = [ ['http://api.axetk.cn/api/?act=', 'http://tiku.axetk.cn/'], ['http://api.tk.icu/api/?act=', 'http://tiku.tk.icu/'] ], handleImgs = (s) => { // 去除字符串中的style与script标签和其中的内容 20240503 s = s.replace(/