行知学徒自动网课

(行知学徒旗下)自动观看,增加新版人脸识别与自动播放

当前为 2021-02-23 提交的版本,查看 最新版本

// ==UserScript==
// @name         行知学徒自动网课
// @namespace    http://ifdo.ml/
// @version      2021.2.231
// @description  (行知学徒旗下)自动观看,增加新版人脸识别与自动播放
// @match       *://www.ixueto.com/*
// @grant        none
// ==/UserScript==
(function() {
    'use strict';
    let faceinfoid = 1;
    let info = 0;
    let asdf = function(){
        $("#layui-layer-shade4").click();
        console.log("点击...");
    }
    let url=window.location.pathname;
    if(url.lastIndexOf('/web/') + 1){
        window.location.href="//www.ixueto.com/login.aspx";
    }
let autoNext = function(){

	//获取提示信息
	let timeStr = $("#s_message").html();
    let faceid=$("#btn_face").html();
    let playinfo =$("#s_message2").html();
    let passinfo = $("#dvpass").html();
    let faceinfo = $("#tips").html();

    if(passinfo=='恭喜您通过了课程测试!'){
        $("a")[0].click();
    }
    if(faceid=='人脸识别'){
        if(faceinfoid){
            $("#btn_face").click();
            faceinfoid=0;
        }
        console.log("正在认证...");
    }


	//如果已经学完,直接下一集
    if(timeStr == '本课时已学完,请完成最后一次人脸识别!'){
        test();
    }
	if (timeStr=='本课时已学完') {
		fun_nextLesson();
        //test();
		return;
	}
    if(faceinfo=='识别成功,计时中...'){
        $("#layui-layer-shade4").click();
    }
    asdf();

    //let metaData = player.getMetaDate();
    //if(metaData.paused){
        //player.playOrPause();
    //}
    if(faceid==undefined){
        player.videoPlay();
        faceinfoid=1;
    }
    
    
	//获取已学习时长

	//1.开始位置,结束位置
	let startKey = '已学习:';
	let endKey = '秒';
	let startPos = timeStr.indexOf(startKey)+startKey.length;
	let endPos = timeStr.indexOf(endKey);
	//2.截取时长
	let alreadySeconds = timeStr.substring(startPos,endPos);


	//获取总学习时长

	//1.开始位置,结束位置
	let startKey2 = '总时长:';
	let endKey2 = '秒';
	let startPos2 = timeStr.indexOf(startKey2)+startKey2.length;
	let endPos2 = timeStr.indexOf(endKey2, timeStr.indexOf(endKey2)+1);
	//2.截取时长
	let sumSeconds = timeStr.substring(startPos2,endPos2);


	//判断两个时长是否相等
	if (alreadySeconds == sumSeconds) {
		//如果相等,那就点击下一课
		//不用点击按钮了,因为直接有个下一级的函数,执行就行
		//fun_nextLesson();
        test();
	} else {
		console.log('时间还没到');
		console.log(timeStr);
	}

}


setInterval(autoNext, 5000); //每1000ms执行一次判断函数
    // Your code here...
})();