blogger

柠阿乐の博客

于是,我为之努力
智慧树刷课代码

功能: 检测章节 自动静音 自动下一节 1.5倍速 而且重要的一点就是,跳出来的问题,会随机作答,而不是全部选第一个。 代码来源网络。 

使用方法: 打开正在看的视频 按F12打开控制台,找到Console那一栏,直接粘贴此处代码 按回车就好了。

var chapters_length = document.querySelectorAll("ul.list").length;
var video_length = document.querySelectorAll("li.video").length;
console.log("共检测到" + chapters_length + "章" + video_length + "小节!");
document.getElementsByClassName("volumeIcon")[0].click(); //设置静音
console.log("静音设置成功!");
document.getElementsByClassName("speedTab speedTab15")[0].click(); //设置1.5倍速
console.log("1.5倍播放");
//每两秒检测进度是否100%
setInterval(() => {
    var progress = window.getComputedStyle(document.getElementsByClassName("passTime")[0], null).width; //进度数据
    if (progress == "100%") {
        //下一节
        document.getElementById("nextBtn").click();
        console.log("自动播放下一节");
        setTimeout(() => {
            //检测00:00:00状态 处理章节间跳动
            if (document.querySelector("span.duration").innerHTML == "00:00:00") {
                var finished_length = document.querySelectorAll("b.time_icofinish").length;
                document.querySelectorAll("li.video")[finished_length].click();
                console.log("进入下一章节!");
            }
        }, 2000);
    }
}, 2000);
//每秒检测弹窗
setInterval(() => {
    //防静音意外失效
    if(!document.getElementsByClassName("volumeBox  volumeNone")[0])
    {
        document.getElementsByClassName("volumeIcon")[0].click();
        document.getElementsByClassName("speedTab speedTab15")[0].click(); //设置1.5倍速
    }
    if (document.getElementsByClassName("dialog-test")[0]) {
        console.log("检测到弹窗!");
        var random_number = randomNum(0, document.querySelectorAll("li.topic-item").length - 1);
        document.getElementsByClassName("topic-item")[random_number].click(); //随机选一个防作弊
        console.log("已选择第" + (random_number + 1) + "个选项");
        document.getElementsByClassName("el-dialog__wrapper dialog-test")[0].getElementsByClassName(
            "el-dialog__footer")[0].getElementsByClassName("btn")[0].click(); //关闭弹窗
        console.log("弹窗关闭!");
        document.getElementById("playButton").click(); //播放
    }
}, 1000);
 
function randomNum(minNum, maxNum) {
    switch (arguments.length) {
        case 1:
            return parseInt(Math.random() * minNum + 1, 10);
            break;
        case 2:
            return parseInt(Math.random() * (maxNum - minNum + 1) + minNum, 10);
            break;
        default:
            return 0;
            break;
    }
}
评论(0)

© 2018  柠阿乐の博客  · emlog

蜀ICP备19013579号-柠阿乐   Design by 柠阿乐