您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
自动播放传智播客课程视频, 开发者博客:http://www.nothamor.cn
// ==UserScript== // @name 传智自动播放视频 // @namespace http://tampermonkey.net/ // @version 1.1 // @description 自动播放传智播客课程视频, 开发者博客:http://www.nothamor.cn // @author nothamor // @match *.ityxb.com/* // @homepage https://www.nothamor.cn/ // @grant GM_xmlhttpRequest // ==/UserScript== (function() { 'use strict'; console.log("欢迎使用传智自动播放插件, 作者博客:https://www.nothamor.cn"); setTimeout(function() { let url = window.location.href; if(url.includes("http://stu.ityxb.com/writePaper/")) { auto_search(); console.log("检测到为测试页面, 开始自动查询题目"); }else if(url.includes("lookPaper")){ auto_search(); }else if(url.includes("http://stu.ityxb.com/preview/detail/")) { auto_play(); console.log("检测到为视频播放页面, 开始自动播放视频"); } }, 5000); function auto_play() { const CLASS_LIST = document.getElementsByClassName("point-progress-box"); const CLASS_NAME = document.getElementsByClassName("point-text ellipsis"); let question_text = document.getElementsByTagName("pre")[0]; let player = document.getElementsByTagName("video")[0].id; let question_text_value; document.getElementById(player).click(); let counter = 0; const TIMER = setInterval(function () { let percent = CLASS_LIST[counter].innerHTML.replace(/\ +/g, "").replace(/[\r\n]/g, ""); let title_name = CLASS_NAME[counter].innerHTML.replace(/\ +/g, "").replace(/[\r\n]/g, ""); if (percent.includes("100%") && counter == (CLASS_LIST.length - 1)) { clearInterval(TIMER); alert("当前页面所有视频播放完成"); } else if (percent.includes("100%")) { CLASS_LIST[counter + 1].click(); player = document.getElementsByTagName("video")[0].id; document.getElementById(player).click(); counter++; } if (title_name.includes("习题")) { question_text = document.getElementsByTagName("pre")[0]; question_text_value = question_text.innerHTML; console.log(" "); GM_xmlhttpRequest({ method: 'POST', url: 'http://cx.icodef.com/wyn-nb', headers: { 'Content-type': 'application/x-www-form-urlencoded', 'Authorization': '', }, data: 'question=' + encodeURIComponent(question_text_value), onload: function (response) { if (response.status == 200) { let obj = $.parseJSON(response.responseText.replace(/^操作数据失败!/, '')) || {}; console.log("题目:" + question_text_value + "的答案为:" + obj.data); } } }); } }, 1000); } function auto_search() { const QUESTION = document.getElementsByTagName("pre"); let counter = 0; const SEARCH = setInterval(function() { GM_xmlhttpRequest({ method: 'POST', url: 'http://cx.icodef.com/wyn-nb', headers: { 'Content-type': 'application/x-www-form-urlencoded', 'Authorization': '', }, data: 'question=' + encodeURIComponent(QUESTION[counter].innerHTML), onload: function (response) { if (response.status == 200) { let obj = $.parseJSON(response.responseText.replace(/^操作数据失败!/, '')) || {}; console.log(QUESTION[counter].innerHTML + "的答案为:" + obj.data); counter++; } } }); if(counter == (QUESTION.length - 1)) { clearInterval(SEARCH); console.log("题目搜索完成"); } }, 1000); } })();