宝武微学苑挂机脚本

跳过挂机判断,自动续播,列表播放完毕自动关闭当前标签页

// ==UserScript==
// @name         宝武微学苑挂机脚本
// @namespace    http://tampermonkey.net/
// @version      0.5
// @description  跳过挂机判断,自动续播,列表播放完毕自动关闭当前标签页
// @author       SpaceJJ
// @match        http://mooc.baosteel.com/*
// @icon         https://www.google.com/s2/favicons?domain=baosteel.com
// @grant        GM_log
// @grant        GM_addStyle
// @grant        GM_setValue
// @grant        GM_getValue
// @grant        GM_xmlhttpRequest
// @grant        GM_deleteValue
// @license MIT
// ==/UserScript==
// 自动点击下一节
(function () {
        // 定时器自动确认(每两分钟自动检测一次)
    var autoConfirm = setInterval(() => {
        // 判断是否下一节按钮
        if (document.getElementsByClassName('ant-btn ant-btn-primary ant-btn-lg')[0]) {
            // 模拟点击
            console.log("自动确认");
            document.getElementsByClassName('ant-btn ant-btn-primary ant-btn-lg')[0].click();
        }
    },120000 )
var pageOfVideo = 0;//检测页面是否为视频播放页面,默认为否
var count = 0;//超时次数统计
    setTimeout(function a(){
        if(!document.getElementsByTagName('video')[0]){
            count ++;
            if(count >=12){//超时:2min内没找到视频对象,如果是视频播放页则刷新,如果是其他页面则无后续log
                if(pageOfVideo!=0){//视频播放页
                    window.location.reload();//刷新
                }
                else{
                    a();//继续设置定时器,但不log日志
                }
            }
            else{//未超时
                console.log("未找到视频!"+count);
                setTimeout(() => {
                    console.log("重新获取视频对象");
                    a();
                },5000);
            }
        }
        else{
            count = 0;//超时定时器归零
            pageOfVideo = 1;//当有视频对象时,设置为视频播放页
            var vid = document.getElementsByTagName('video')[0];
            var videoChange = setInterval(() => {
                // 判断当前视频是否切换
                if (document.getElementsByTagName('video')[0] != vid ) {
                    // 切换视频重新获得视频对象
                    console.log("视频切换,重置定时器");
                    clearInterval(videoChange);
                    clearInterval(netstat);
                    a();
                }
            }, 1000)
            var netstat = setInterval(() => {//每分钟检测一次
                // 判断当前视频的网络状态,如果不正常则刷新
                if (document.getElementsByTagName('video')[0].networkState != 1) {
                    // 切换视频重新获得视频对象
                    console.log("视频播放网络异常");
                    window.location.reload();//刷新
                }
            }, 60000)
            console.log("视频正常播放,定时启动");
            vid.addEventListener('ended',function(){ //视频播放完的事件
                //这里触发点击事件
                console.log("播放完毕");
                //清除定时器
                clearInterval(videoChange);
                clearInterval(netstat);
                //延迟点击下一节
                setTimeout(() => {
                    if(document.getElementsByClassName('go-survey')[0]){
                        //延迟执行关闭脚本,否则关闭太快被视为未完成当前视频的学习
                        setTimeout(() => {
                            window.close();
                        },10000);
                    }
                    else{
                        document.getElementsByClassName('go-next')[3].click();
                        console.log("点击下一节");
                        setTimeout(() => {
                            a();
                        },5000);
                    }
                },2000);
            });
        }
    },3000);
})();

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址