选择课程点进去,全自动操作,只需要选择你要学习的课程即可,会自动播放,自动答题。
// ==UserScript==// @name 公需科目|学习|考试// @namespace gxkm// @license CC BY-NC-SA// @version 2024.5.15.1400// @description 选择课程点进去,全自动操作,只需要选择你要学习的课程即可,会自动播放,自动答题。// @author 9527// @match https://rsjapp.mianyang.cn/jxjy/pc/*// @match https://rsjapp.mianyang.cn/jxjy/pc/ksz*// @run-at document-start// ==/UserScript==(function() {'use strict';var tihao = 0;// 获取当前网址var currentURL = window.location.href;window.onload = function () {createLogBox();addTextToLogBox("脚本加载成功!");if (currentURL.includes("jxjy/pc/index")) {addTextToLogBox("当前在 主页,即将打开 我的课程")window.onload = function () {}document.querySelector("#main > header > div > header > div.header > div > ul.navicat.flex_start_center > li:nth-child(2) > a").click()}if (currentURL.includes("jxjy/pc/zxxx")) {addTextToLogBox("当前在 学习页面,马上开始学习")window.onload = function () {}setInterval(playVideodianjianniu,3000);}else if (currentURL.includes("pc/wdkc")) {addTextToLogBox("当前在 我的课程页面")// 考试处于灰色状态,点击学习if (document.querySelector("#main > div > div.rightReault > div > div:nth-child(3) > div:nth-child(2) > div:nth-child(3)").className == 'disabledbutton') {addTextToLogBox("考试处于灰色状态,点击学习")addTextToLogBox(document.querySelector("#main > div > div.rightReault > div > div:nth-child(3) > div:nth-child(2) > div:nth-child(3)").className == 'disabledbutton')document.querySelector("#main > div > div.rightReault > div > div:nth-child(3) > div:nth-child(2) > div:nth-child(1) > a").click();}addTextToLogBox(document.querySelector("#main > div > div.rightReault > div > div:nth-child(3) > div:nth-child(2) > div:nth-child(3)").className == 'disabledbutton')var kaoshiz#### = 0;let timer = setInterval(()=>{//点击 正式考试 document.querySelector("#main > div.container > div.rightReault > div > div:nth-child(3) > div:nth-child(2) > div:nth-child(3) > a//点击 模拟考试 document.querySelector("#main > div > div.rightReault > div > div:nth-child(3) > div:nth-child(2) > div:nth-child(2) > a")var kaoshi = document.querySelector("#main > div.container > div.rightReault > div > div:nth-child(3) > div:nth-child(2) > div:nth-child(2) > a")if (kaoshi != null && kaoshiz#### == 0) {//点击 正式考试clearInterval(timer);kaoshiz#### = 1;kaoshi.click();}//location.reload();},20000);}else if (currentURL.includes("ksz")) {// 拦截所有的XHR请求addTextToLogBox("考试中")document.querySelector(".test-btn-down").click()window.XMLHttpRequest.prototype.realOpen = window.XMLHttpRequest.prototype.open;window.XMLHttpRequest.prototype.open = function(method, url, async, user, pass) {this.realOpen(method, url, async, user, pass);// 添加请求事件监听this.addEventListener('readystatechange', function() {if (this.readyState === 4) { // 请求完成if(url.includes('https://rsjapp.mianyang.cn/jxjy/pc/lcService/getData/mye003.do')){tihao++;var data = this.responseText;// 获取响应数据dati(data,tihao)}}});};document.querySelector(".test-btn-up").click()}};})();// 在新窗口中打开一个网页function openNewWindow(url) {window.open(url, "_blank");}function NextPlayPage(){var lenth = document.querySelectorAll(".videoList .title .overTitle").length;var bofangShiPing = document.querySelector("#videoTitle").innerTextvar shipingList = document.querySelectorAll(".videoList .title .videoName")var dangqianShiPing = ""// 判断视频播放是否完成for (var i = 0; i < lenth; i++) {dangqianShiPing = shipingList[i].innerTextif(bofangShiPing.includes(dangqianShiPing)){if(document.querySelectorAll(".videoList .title .overTitle")[i].innerText === "【已完成】"){if (i==lenth-1) {// 已学完addTextToLogBox("已学完")// 学习完成if (document.querySelector("#jAlertButton > #jAlertButton") != null) {document.querySelector("#jAlertButton > #jAlertButton").click()}} else {shipingList[i + 1].click();clickJiXuAnNiu();}}break;}}}//日志函数function addTextToLogBox(TextLog) {// 获取目标 <div> 元素var targetDiv = document.getElementById('logBox'); // 替换为你的目标 <div> 元素的 IDtargetDiv.appendChild(document.createElement('br'));// 创建文本节点var textNode = document.createTextNode(TextLog);// 添加文本节点到目标 <div> 元素targetDiv.appendChild(textNode);targetDiv.scrollTop = targetDiv.scrollHeight;}//创建日志框function createLogBox() {var logBox = document.createElement('div');logBox.id = 'logBox';logBox.style.position = 'fixed';logBox.style.bottom = '0';logBox.style.left = '0';logBox.style.width = '200px';logBox.style.height = '200px';logBox.style.backgroundColor = 'green'; // 更改背景颜色为绿色黑色logBox.style.color = 'black'; // 更改文本颜色为绿色黑色logBox.style.overflow = 'auto';logBox.style.padding = '10px';logBox.style.fontFamily = 'Arial, sans-serif';logBox.style.whiteSpace = 'pre-wrap';document.body.appendChild(logBox);}//点击继续学习function clickJiXuAnNiu() {var jixu = document.querySelector("#jAlertButton2")var bf = document.querySelector("#vod-player > button")var querySelectors = "#vod-player > button > span.vjs-icon-placeholder"var dianjiqueding = document.querySelector(querySelectors)if (dianjiqueding == null) {console.log("没找到继续学习")} else {//点击确定按钮dianjiqueding.click()}if (jixu == null) {}else{bf.click()}if (jixu == null) {}else{jixu.click()}if (document.querySelector('video')) {document.querySelector('video').playbackRate = 16.0;}var videoClassName = document.querySelector("#video > div").classNameif(videoClassName.includes("vjs-paused")){document.querySelector("#vod-player > button > span.vjs-icon-placeholder").click()}}function playVideodianjianniu() {window.onload = function () {}NextPlayPage()if (document.querySelector(".vjs-big-play-button")) {document.querySelector(".vjs-big-play-button").click()}//播放暂停,点击播放按钮var videoClassName = document.querySelector("#video > div").classNameif(videoClassName.includes("vjs-paused")){console.log("播放已暂停")document.querySelector("#vod-player > button > span.vjs-icon-placeholder").click()}let yuansu = document.querySelector("#vod-player > div.vjs-control-bar > button.vjs-play-control.vjs-control.vjs-button.vjs-paused")if (yuansu == null) {clickJiXuAnNiu()console.log("正在播放")} else {//点击确定按钮var jingdu = document.querySelector("#vod-player > div.vjs-control-bar > div.vjs-remaining-time.vjs-time-control.vjs-control > span.vjs-remaining-time-display").innerTextif (jingdu != "0:00") {addTextToLogBox(document.querySelector("#videoTitle").innerText + jingdu)}}}function dati(data,tihao){var json=JSON.parse(data);// 使用JSON.parse()进行解析:使用JSON对象的静态方法parse(),将字符串解析为对象。var daAn = json["r###ltData"]["data"]["data"]["questionMap"]["option"]["adz006"]var shengYuTimeaddTextToLogBox(tihao + " : " + daAn)setTimeout(function() {// 这里是延迟执行的代码var array = daAn.split(',');array.forEach(element => {var xuanzhe = "#test-part-box p[data-value=" + element + "]"setTimeout(function() {document.querySelector(xuanzhe).click()},500)});if (tihao < 50) {setTimeout(() => {document.querySelector(".test-btn-down").click()}, 1000);}else{addTextToLogBox("答题完成,等待交卷。");const intervalId = setInterval(() => {shengYuTime = document.querySelector("#remain").innerTextvar arr = shengYuTime.split(':')var t = parseInt(arr[1])if (t < 20) {document.querySelector("div.test-info .submitBtn").click()clearInterval(intervalId);setTimeout(() => {var qd = document.querySelector("#jAlertButton2")if (qd != null) {qd.click()}}, 3000);}let yuansu = document.querySelector("#jAlertButton")if (yuansu != null) {yuansu.click()}}, 5000);}}, 1000);}