您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Greasy Fork is available in English.
挂机看西南交通大学网络教育
// ==UserScript== // @name 【挂机助手】西南交通大学网络教育 // @namespace http://tampermonkey.net/ // @version 1.1 // @description 挂机看西南交通大学网络教育 // @author kakasearch // @match https://e-learning.swjtu.edu.cn/* // @icon https://www.google.com/s2/favicons?sz=64&domain=xnjd.cn // @require http://greasyfork.icu/scripts/425166-elegant-alert-%E5%BA%93/code/elegant%20alert()%E5%BA%93.js?version=922763 // @grant GM_setValue // @grant GM_getValue // @grant GM_xmlhttpRequest // @license MIT // ==/UserScript== (function() { 'use strict'; function click_course(){ //查找并点击需要学习的课程 for(let i of document.querySelectorAll(".list-item")){ let status = i.querySelector(".tag").innerText let name = i.querySelector(".name").innerText.replace(/\(\d\d:\d\d:\d\d\)/,"").trim() if(/(继续学习)|(未学习)/.test(status)){ GM_setValue("doing",{"name":name,"time":new Date().getTime(),"status":status}) i.click() return true } } return false } function do_homework(ans_list){ for(let ans_item of ans_list){ let answers = ans_item.answers let id_ = ans_item.id if(answers){ for(let ans of answers.split(",")){ document.querySelector("#list-item-"+id_).querySelector("input[value="+ans+"]").click() } } } } if(/CourseLearning\/CourseInfo/.test(window.location.href)){ // 课程主页,在当前页面实现控制做哪些课程 new ElegantAlertBox("即将开始>__<") let init = setInterval(function(){ if(document.querySelectorAll(".list-item").length){ clearInterval(init) }else{return} let num = 0 for(let i of document.querySelectorAll(".list-item")){ if(!i.querySelector(".tag")) break let status = i.querySelector(".tag").innerText let name = i.querySelector(".name").innerText.replace(/\(\d\d:\d\d:\d\d\)/,"").trim() if(/(继续学习)|(未学习)/.test(status)){ GM_setValue("doing",{"name":name,"time":new Date().getTime(),"status":status}) setTimeout(function(){i.click()},5000*num) num +=1 if(num>=3){break} } } if(num == 0){setInterval(function(){ new ElegantAlertBox("已学完>__<") },3000)} setTimeout(function(){window.location.reload()},20000) },3000) }else if(/CourseLearning\/video/.test(window.location.href)){ //视频播放页,做完后给主页一个标志,结束标签页 new ElegantAlertBox("即将开始看课>__<") let init = setInterval(function(){ new ElegantAlertBox("正在检查>__<") let name = document.querySelector("div.title") if(name){ name = name.innerText.trim() clearInterval(init) }else{return} document.querySelector("video").muted="muted" document.querySelector("video").play() //开始播放的按钮 setTimeout(function(){ new ElegantAlertBox("学习完>__<") window.close() },20000) },5000) }else if(/CourseLearning\/doc/.test(window.location.href)){ //视频播放页,做完后给主页一个标志,结束标签页 new ElegantAlertBox("即将开始看课>__<") let init = setInterval(function(){ new ElegantAlertBox("正在检查>__<") let name = document.querySelector("div.title") if(name){ name = name.innerText.trim() clearInterval(init) }else{return} setTimeout(function(){ new ElegantAlertBox("学习完>__<") window.close() },20000) },5000) }else if(/OnlineJob\/working/.test(window.location.href)){ new ElegantAlertBox("即将开始做题>__<") setTimeout(function(){ GM_xmlhttpRequest({ method: 'GET', url: "https://elearning.xnjd.cn/api/study/homework/info/previewHomeworkInfo?homework_id="+/id=(.*?)&/.exec(window.location.href)[1], dataType: "json", onload: function(xhr) { let data = JSON.parse(xhr.responseText) console.log(data) do_homework(data.datas.exercises) }, onerror:function(){ console.log("no answer")} }); },5000) } // Your code here... })();