您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
storehouse
此脚本不应直接安装。它是供其他脚本使用的外部库,要使用该库请加入元指令 // @require https://update.gf.qytechs.cn/scripts/504684/1432776/xjyxjyw.js
(function() { 'use strict'; /* globals jQuery, $, waitForKeyElements */ unsafeWindow.GM_xmlhttpRequest = GM_xmlhttpRequest; unsafeWindow.GM_getValue = GM_getValue; unsafeWindow.GM_deleteValue = GM_deleteValue; // 检查当前窗口是否为顶层窗口 if (window.self !== window.top) { return; // 如果不是顶层窗口,则不执行脚本 } var ddds3 = null; var addMessage = null; let btn1=GM_registerMenuCommand ("\u4f5c\u8005\uff1a\ud83c\udf49\u897f\u74dc\u8981\u5927\u7684\ud83c\udf49", function(){ confirm("Hello,\u611f\u8c22\u4f7f\u7528\ud83c\udf49\u897f\u74dc\u5237\u8bfe\u52a9\u624b\ud83c\udf49\uff01\u591a\u591a\u53cd\u9988\u54e6"); GM_unregisterMenuCommand(btn1); }, ""); let btn2=GM_registerMenuCommand ("\u4ed8\u8d39\u5185\u5bb9", function(){ alert("\u9650\u65f6\u514d\u8d39\uff0c\u5168\u529b\u5f00\u53d1\u4e2d..."); }, "p"); var chapterCount = 0; var chapterId = 0; var sectionCount = 0; var sectionId = 1; var studyTime = 0; var totalTime = 0; var elementsArray = 0; var timeStr = null; var search = null; var searchVD = null; var searchFC = null; var coursIndex = 0; var allCours = 0; function saveHomeUrl(){ let homeUrl = window.location.href; GM_setValue('homeUrl',homeUrl); } function getHomeUrl(){ return GM_getValue('homeUrl'); } function searchChapter(){ if(chapterId >= chapterCount){ addMessage("所有章节学习完成"); } else{ if(document.getElementsByTagName('tbody')[0].children[chapterId].children[4].innerText === '进入学习 已学习'){ addMessage("第"+(chapterId+1)+"章节学习完成"); chapterId++; searchChapter(); return; } // getExamPage(chapterId); test(chapterId); } } var elements = null; function getAnswer(){ let oldData = GM_getValue('answerList'); if(Array.isArray(oldData)){ return oldData; } return []; } function getAnswerByName(xgExamName){ if(xgExamName === '' || xgExamName === null || xgExamName === undefined){ alert("考题id不可为空!"); return false; } let data = getAnswer(); let result = data.reduce((accumulator,obj) => { if(xgExamName in obj){ return obj[xgExamName]; } return accumulator; },undefined); if(!result){ alert('没有此考试数据!'); return 'A'; } return result; } function saveAnswer(name,value){ let answer = getAnswer(); let existIndex = answer.findIndex(obj => name in obj); if (existIndex !== -1) { // 更新值为['1','2','3'] answer[existIndex][name] = value; } else { // push新集合 let tempMap = {}; tempMap[name] = value; answer.push(tempMap); } GM_setValue('answerList',answer); } const panel = function(){ var container = $('<div id="gm-interface"></div>'); var titleBar = $('<div id="gm-title-bar">\ud83c\udf49\u897f\u74dc\u7f51\u8bfe\u52a9\u624b\ud83c\udf49</div>'); var minimizeButton = $('<div title="\u6536\u8d77" style="display:black"><svg id="gm-minimize-button" class="bi bi-dash-square" viewBox="0 0 16 16" fill="currentColor" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M14 1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z"/><path fill-rule="evenodd" d="M3.5 8a.5.5 0 0 1 .5-.5h8a.5.5 0 0 1 0 1H4a.5.5 0 0 1-.5-.5z"/></svg></div>'); var maxButton = $('<div title="\u5c55\u5f00" style="display:none"><svg id="gm-minimize-button" class="bi bi-plus-square" viewBox="0 0 16 16" fill="currentColor" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 3.5a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-.5.5H4a.5.5 0 0 1 0-1h3.5V4a.5.5 0 0 1 .5-.5z"/><path fill-rule="evenodd" d="M7.5 8a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1H8.5V12a.5.5 0 0 1-1 0V8z"/><path fill-rule="evenodd" d="M14 1H2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z"/></svg></div>'); var content = $('<div id="gm-content"></div>'); var tips = $('<div class="tip" style="display:none;">\u957f\u6309\u62d6\u62fd</div>'); var scrollText = $('<marquee>').text('\u4e7e\u5764\u672a\u5b9a\uff0c\u4f60\u6211\u7686\u662f\u9ed1\u9a6c----\u4f5c\u8005\uff1a\u897f\u74dc\u8981\u5927\u7684\uff08\u611f\u8c22\u652f\u6301\uff01\uff09').css({ 'position': 'absolute', 'top': '15%', 'left': '50%', 'transform': 'translate(-50%, -50%)', 'width': '90%', 'height': '25px', 'font-size': '16px', 'line-height': '1.5', 'white-space': 'nowrap' }).appendTo(content); // var ddds1 = $('<div style="position: absolute;top: 85%;width:90%;height:10%;padding: 3px;background: #ffedf0;border-radius: 5px;">\u70b9\u51fb\u542f\u52a8\uff1a<button id="beginExam" style="position: absolute;width:48px;right: 10px;background-color: #ffe5e5;border-radius: 4px;border-color: #ffc0c0;color: grey;">开始答题</button></div>'); // var ddds5 = $('<div style="position: absolute;top: 35%;width:90%;height:10%;padding: 3px;background: #ffedf0;border-radius: 5px;">\u70b9\u51fb\u542f\u52a8\uff1a<button id="stopxg" style="position: absolute;width:48px;right: 10px;background-color: #ffe5e5;border-radius: 4px;border-color: #ffc0c0;color: grey;">暂停</button></div>'); //var ddds2 = $('<div style="position: absolute;top: 85%;width:90%;height:10%;padding: 3px;background: #ffedf0;border-radius: 5px;">\u89c6\u9891\u500d\u901f\uff1a<button id="speedxg" style="position: absolute;width:48px;right: 10px;background-color: #ffe5e5;border-radius: 4px;border-color: #ffc0c0;color: grey;">X16</button></div>'); ddds3 = $('<div id="message-container" style="position: absolute;display: grid;align-content: center;justify-content: center;top: 20%;width:94%;height:62%;max-height:62%;overflow-y:auto;padding: 3px;background: #ffffff;border-radius: 5px;"></div>'); var ddds4 = $('<div style="position: absolute;top: 85%;width:94%;height:10%;padding: 3px;background: #ffedf0;border-radius: 5px;"><button id="toExam" style="display: none;position: absolute;width:69px;right: 313px;background-color: #ffe5e5;border-radius: 4px;border-color: #ffc0c0;color: grey;">去考试</button><button id="beginExam" style="display: none;position: absolute;width:98px;right: 213px;background-color: #ffe5e5;border-radius: 4px;border-color: #ffc0c0;color: grey;">开始答题</button><a href="http://8.130.116.135/?article/" style="position: absolute;right: 10px;text-decoration: none;color: pink;">\u003e\u003e\u003e\u8054\u7cfb\u003a\u0031\u0039\u0030\u0038\u0032\u0034\u0035\u0033\u0030\u0032\u0040\u0071\u0071\u002e\u0063\u006f\u006d</a></div>'); container.append(titleBar); // content.append(ddds1); // content.append(ddds5); //content.append(ddds2); content.append(ddds3); content.append(ddds4); container.append(content); container.append(maxButton); container.append(minimizeButton); $('body').append(container); $('body').append(tips); GM_addStyle(` #gm-interface { position: fixed; top: 50%; left: 50%; border-radius: 5px; background-color: white; z-index: 9999; } #gm-title-bar { padding: 5px; background-color: #ffc0c0; border: 1px solid black; border-radius: 5px; cursor: grab; } #gm-minimize-button { position: absolute; top: 2px; right: 2px; width: 30px; height: 30px; border-radius: 5px; padding: 0; font-weight: bold; background-color: #ffc0c0; cursor: pointer; } #gm-content { padding: 10px; border: 1px solid black; border-radius: 2px 2px 5px 5px; background-color: #ffe5e5; width: 400px; height: 300px; } .tip{ font-family: "黑体"; color: black; -webkit-transform: scale(0.8); position:absolute; padding: 6px 5px; background-color:#ffe8f0; border-radius: 4px; z-index: 9999; } `); titleBar.on('mousemove',function(e){ tips.attr("style", "display:black;"); var top = e.pageY+5; var left = e.pageX+5; tips.css({ 'top' : top + 'px', 'left': left+ 'px' }); }); titleBar.on('mouseout',function(){ tips.hide(); }); titleBar.on('mousedown', function(e) { var startX = e.pageX - container.offset().left + window.scrollX; var startY = e.pageY - container.offset().top + window.scrollY; $(document).on('mousemove', function(e) { e.preventDefault(); var newX = e.pageX - startX; var newY = e.pageY - startY; container.css({ left: newX, top: newY }); }); $(document).on('mouseup', function() { $(document).off('mousemove'); $(document).off('mouseup'); }); }); minimizeButton.on('click', function() { minimizeButton.attr("style", "display:none;"); maxButton.attr("style", "display:black;"); content.slideToggle(0); container.css({ width: 200 }); }); maxButton.on('click', function() { minimizeButton.attr("style", "display:black;"); maxButton.attr("style", "display:none;"); content.slideToggle(0); container.css({ width: 422 }); }); ddds3.on('mousewheel', function(event) { event.preventDefault(); var scrollTop = ddds3.scrollTop(); ddds3.scrollTop(scrollTop + event.originalEvent.deltaY); }); $("#beginExam").on('click',function(){ beginExam(); }); $("#toExam").on('click',function(){ window.open("https://se.mhtall.com/cuggw/rs/olex_index",'_blank'); }); addMessage = function(message){ if (ddds3.children().length >= 15) { ddds3.children().first().remove(); } var messageElement = $('<div class="message"></div>').text(message).css({ 'margin-bottom': '10px' }).appendTo(ddds3); } } function tipsWin(){ return new Promise((resolve, reject) => { var popup = document.createElement('div'); popup.id = 'customPopup'; popup.style.display = 'none'; popup.style.position = 'fixed'; popup.style.top = '50%'; popup.style.left = '50%'; popup.style.transform = 'translate(-50%, -50%)'; popup.style.backgroundColor = '#fff'; popup.style.padding = '20px'; popup.style.border = '1px solid #ccc'; popup.style.boxShadow = '0 2px 4px rgba(0, 0, 0, 0.2)'; popup.style.zIndex = '9999'; popup.innerHTML = ` <p id="timeCount">5秒后执行脚本?</p> <button id="confirmButton">是</button> <button id="cancelButton">否</button> `; document.body.appendChild(popup); var confirmButton = document.getElementById('confirmButton'); var cancelButton = document.getElementById('cancelButton'); var confirmed = false; let juNext = false; popup.style.display = 'block'; confirmButton.addEventListener('click', function() { confirmed = true; closePopup(); resolve(false); }); cancelButton.addEventListener('click', function() { ddds3.children().remove(); addMessage("刷新页面即可重启"); addMessage("需要考试请点击“去考试”按钮,跳转后选择对应考试"); confirmed = true; closePopup(); resolve(true); }); function ju(time){ if(!confirmed){ if(time < 1){ popup.innerHTML = ` <p>时间到了! 脚本启动.</p>`; setTimeout(function() { closePopup(); resolve(false); // setTimeout(function(){ // // 手动启动定时器 // startTimer(); // window.open("https://jlufe.mhtall.com/jlufe/rs/roll_course");"_self" // window.close(); // },1000); }, 1000); } document.getElementById('timeCount').innerText = time+'秒后执行脚本?' setTimeout(function(){ ju(--time) },1000); } } ju(5); function closePopup() { popup.style.display = 'none'; } }); } var wait = null; panel(); // 手动启动定时器 function startTimer() { wait = setInterval(function (){ // ddds3.children().first().remove(); if(window.location.href.split('?')[0] === 'http://www.xjyxjyw.com/member/hs_btszpx.do'){ addMessage("课程详情"); chapterCount = document.getElementsByTagName('tbody')[0].childElementCount; searchChapter(); } else{ tipsWin().then((result) => { addMessage("前往课程详情页"); }); } clearInterval(wait); }, 100); } function test(cid){ let courseId = document.getElementsByTagName('tbody')[0].children[cid].getElementsByTagName('a')[1].href.split('=')[1]; GM_xmlhttpRequest({ url:'http://www.xjyxjyw.com/member/leyiexam_result.do', method: "POST", Cookie: document.cookie + '', data: 'backurl=&leyiQuestion.data='+'[{"name":"qab1e1a64d9d911ee89326c92bf3bb305","value":"D"},{"name":"qab19ec84d9d911ee89326c92bf3bb305","value":"D"},{"name":"qab196a29d9d911ee89326c92bf3bb305","value":"E"},{"name":"qab1a21b4d9d911ee89326c92bf3bb305","value":"B"},{"name":"qab191f23d9d911ee89326c92bf3bb305","value":"A"}]'+'&leyiQuestion.courseId='+courseId, headers: { "content-type": "application/x-www-form-urlencoded", "Referer": "http://www.xjyxjyw.com/member/leyiexam_quelist.do?leyiQuestion.courseId="+courseId, }, onload: function(response) { try{ var parser = new DOMParser(); var htmlDoc = parser.parseFromString(response.responseText, 'text/html'); var targetElement1 = htmlDoc.getElementsByClassName('wen')[0]; var targetElement2 = targetElement1.getElementsByClassName('h4'); console.log(targetElement1); let ju = 1; for(let i=0;i<targetElement2.length;i++){ let statusLength = targetElement2[i].innerText.split(':').length; console.log('statusLength'+statusLength); let statusStr = targetElement2[i].innerText.split(':')[statusLength-1]; console.log('statusStr'+statusStr); } setTimeout(function(){ console.log('作答完成'); addMessage("第"+(chapterId+1)+"章节作答完成"); chapterId++; searchChapter(); },398); }catch(e){ console.log('无答案'); } } }); } function getExamPage(cid){ let leyidata = []; let courseId = document.getElementsByTagName('tbody')[0].children[cid].getElementsByTagName('a')[1].href.split('=')[1]; GM_xmlhttpRequest({ url:'http://www.xjyxjyw.com/member/leyiexam_quelist.do?leyiQuestion.courseId='+courseId, method: "POST", Cookie: document.cookie + '', headers: { "content-type": "application/x-www-form-urlencoded", "Referer": "http://www.xjyxjyw.com/member/hs_play3.do?id="+courseId, }, onload: function(response) { try{ var parser = new DOMParser(); var htmlDoc = parser.parseFromString(response.responseText, 'text/html'); var targetElement1 = htmlDoc.querySelector("#form1").getElementsByClassName('wen')[0]; var questionCount = targetElement1.getElementsByTagName('input').length; console.log(targetElement1); for(let i=0;i<questionCount;i+=5){ let tempMap = {}; let qid = targetElement1.getElementsByTagName('input')[i].id tempMap['name'] = qid; tempMap['value'] = getAnswerByName(qid); leyidata.push(tempMap); console.log(leyidata); } setTimeout(function(){ addMessage('获取考卷完成'); answerPost(cid,leyidata,0) },500); }catch(e){ alert('考卷获取失败'+courseId); } } }); } function answerPost(leyicourseId,leyidata,awIndex){ // let leyidata = [ // {"name":"qab23d8eed9d911ee89326c92bf3bb305","value":"A"}, // {"name":"qab222fc0d9d911ee89326c92bf3bb305","value":"A"}, // {"name":"qab24393fd9d911ee89326c92bf3bb305","value":"A"}, // {"name":"qab217237d9d911ee89326c92bf3bb305","value":"A"}, // {"name":"qab1dd541d9d911ee89326c92bf3bb305","value":"A"} // ]; // let leyicourseId = '205102020'; GM_xmlhttpRequest({ url:'http://www.xjyxjyw.com/member/leyiexam_result.do', method: "POST", Cookie: document.cookie + '', data: 'backurl=&leyiQuestion.data='+JSON.stringify(leyidata)+'&leyiQuestion.courseId='+leyicourseId, headers: { "content-type": "application/x-www-form-urlencoded", "Referer": "http://www.xjyxjyw.com/member/leyiexam_quelist.do?leyiQuestion.courseId="+leyicourseId, }, onload: function(response) { try{ var parser = new DOMParser(); var htmlDoc = parser.parseFromString(response.responseText, 'text/html'); var targetElement1 = htmlDoc.getElementsByClassName('wen')[0]; var targetElement2 = targetElement1.getElementsByClassName('h4'); console.log(targetElement1); let ju = 1; for(let i=0;i<targetElement2.length;i++){ let statusLength = targetElement2[i].innerText.split(':').length; console.log('statusLength'+statusLength); let statusStr = targetElement2[i].innerText.split(':')[statusLength-1]; console.log('statusStr'+statusStr); if(statusStr === '错误'){ switch(awIndex) { case 0: leyidata[i].value = 'B'; console.log("修改B"+i); break; case 1: leyidata[i].value = 'C'; console.log("修改C"+i); break; case 2: leyidata[i].value = 'D'; console.log("修改D"+i); break; case 3: leyidata[i].value = 'E'; console.log("修改E"+i); break; case 4: leyidata[i].value = 'F'; console.log("修改F"+i); break; case 5: leyidata[i].value = 'G'; console.log("修改G"+i); break; } } else{ ++ju; saveAnswer(leyidata[i].name,leyidata[i].value); } } setTimeout(function(){ if(ju <= targetElement2.length){ console.log(leyidata); ju=1; answerPost(leyicourseId,leyidata,++awIndex); } else{ console.log('作答完成'); console.log(leyidata); } },1500); }catch(e){ console.log('无答案'); } } }); } // 手动停止定时器 function stopTimer() { clearInterval(wait); } startTimer(); function reloadPage(){ setInterval(function (){ window.location.reload() },1000*60*33); } function beginExam(){ console.log("开始答题"); try{ ksPage = document.querySelector("body > div.paper_body"); let ksName = ksPage.children[0].innerText; quesionCount = ksPage.getElementsByClassName('item_li').length; let coursOB = findLC(ksName); if(!coursOB){ addMessage(coursOB); addMessage("题库没有找到该课程"); return; } else{ learningCourseId = coursOB.learningCourseId; learningUrl = coursOB.learningUrl; console.log("找到learningCourseId",learningCourseId); console.log("找到learningUrl",learningUrl); } testP(); examDing(); }catch(e){ addMessage("请前往考试页"); console.log("异常",e) } } })();
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址