切换风格

默认晚霞 雪山 粉色心情 伦敦 花卉 绿野仙踪 加州 白云 星空 薰衣草 城市 简约黑色 简约米色 龙珠
回复 0

3986

主题

3987

帖子

1万

积分

论坛元老

Rank: 8Rank: 8

积分
13197
知到、超星,js脚本[复制链接]
发表于 2022-4-19 19:53:34 | 显示全部楼层 |阅读模式
赠给有缘人
1. 知到:
//查找节点

var tips = document.getElementsByClassName("exploreTip");

//创建新节点

var option = document.createElement("div");

//添加样式

option.style="colorarkOrange;text-align:center;line-height:90px;font-size:30px;background-image: url('https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1555229569058&di=b96c64bb8d02130a76cab9525cdd1610&imgtype=0&src=http%3A%2F%2Fimg.lenovomm.com%2Fs3%2Fimg%2Ficon%2Fapp%2Fapp-img-lestore%2F2315-2015-07-07040431-1436256271865.png'); background-repeat: no-repeat; background-size: 100%; width: 90px; height: 90px; border-radius: 45px;position:fixed;left:60px;top:200px; z-index:999;"

//添加点击事件

option.setAttribute("onClick","StartOrStop()");

option.setAttribute("id","rains");

//插入节点到页面

tips[0].parentNode.insertBefore(option,tips[0]);

//定时器

var timer;

//初始状态

var startstatus = 0;

//次数

var number = 0;



//函数

function start(){

      if(number % 200 == 0){

                console.clear();

      }

      number += 1;

      //获取进度条,以右边章节列表里的进度为准

      var pass = document.getElementsByClassName("progressbar")[0];//passTime

      //获取答题框状态

      var dialog = document.getElementsByClassName("wrap_popboxes    wrap_popchapter")[0];

      var vbox=document.getElementsByClassName('volumeBox')[0];

      //静音

      if(vbox.className=="volumeBox"){

                 document.getElementsByClassName("volumeIcon")[0].click();

      }

      //获取1.5倍速播放按钮

      var SpeedBox15=document.getElementsByClassName("speedTab15")[0];

      var SpeedBox=document.getElementsByClassName("speedBox")[0];

      //判断当前是否为1.5倍速,根据图片来判断

      if(SpeedBox.style.backgroundImage!='url("http://lc.zhihuishu.com/ableVideoPlayer/img/core/1.5-2.png")')

      {

                 SpeedBox15.click();

      }

      //通过删除节点来关闭答题框

      if(dialog != undefined){

              var body=document.getElementsByTagName('body')[0];

           var a=document.getElementById('popbox_overlay');

           body.removeChild(a);

           body.removeChild(dialog);

      }

      //判断播放进度是否大于84%

      if(parseInt(pass.style.width) > 84){

              //切换下一个视频

              document.getElementById("nextBtn").click();

      }

      var play    = document.getElementsByClassName("bigPlayButton pointer")[0];

      //已经暂停 点击开始按钮

      if(play.style.display == "block"){

                    play.click();

      }

      console.log("执行第"+ number + "次");

}

function StartOrStop(){

      //获取播放状态

      var play    = document.getElementsByClassName("bigPlayButton pointer")[0];

      if (startstatus == 0){

              //开始脚本

              timer = setInterval(start, 3000);

              //已经暂停 点击开始按钮

              if(play.style.display == "block"){

                    play.click();

              }

              startstatus = 1;

              var rains = document.getElementById("rains");

              rains.innerText = "已开";

              rains.style.color = "blue";

      }else if (startstatus == 1) {

//停止脚本

              clearInterval(timer);

              //已经播放 暂停播放

              if(play.style.display == "none"){

                    play.click();

              }

              startstatus = 0;

              var rains = document.getElementById("rains");

              rains.innerText = "已关";

              rains.style.color = "red";

      }

}
复制代码
2.超星:

var fa = $("body");

var btn = $("<li></li>");

var json = {

      "background": "#31e16d",

      "height": "16px",

      "padding": "5px",

      "z-index": 99999,

      "cursor": "pointer",

      "top": "300px",

      "right": "120px",

      "position": "fixed"

};

btn.css(json);

btn.html("<span id='lfsenior'>开启自动播放模式</span>");

fa.append(btn);

btn.isPlay=false;

btn.isNewOpend=true;

var timer;



btn.click(function () {

            btn.isPlay=!btn.isPlay;

            if (btn.isPlay) { //定时器开启

                        btn.isNewOpend=true;

                        btn.css("background","#31e16d");

                        $("#lfsenior").html("已开启!");

                  timer=setInterval(start, 1000);

            }else{    //定时器关闭

                        clearInterval(timer);

                        $("iframe").contents().find("iframe").contents().find("#video > div.vjs-control-bar > button")[0].click();

                        btn.css("background","red");

                        $("#lfsenior").html("已关闭!");

            }

});



//播放函数

function play(video) {

            video.find("#video > button").click();

      var jy = video.find("#video > div.vjs-control-bar > div.vjs-volume-panel.vjs-control.vjs-volume-panel-vertical > button");

      if (jy.attr("title") != "取消静音") {

              jy.click()

      }

}



//下一章

function next_play() {

            //获取右边未完成的章节列表    表现为orange橙色

      var lists=document.getElementsByClassName('roundpointStudent    orange01 a002');

      //可能刷着刷着当前章节变绿了,先标记一下

      var flag=true;

      for(var i=0;i<lists.length-1;i++){//遍历,获取当前选中的元素,也有可能没有选中上面的列表

                  var par=lists[i].parentNode;

                  if (par.className=="currents") {

                              lists[i+1].parentNode.click();

                              flag=false;

                              break;

                  }

      }

      if (flag==true) {

                  lists[0].parentNode.click();

      }

}



function start() {



              //当前是否打开了视频页

              var dct=$(".currents")[0];

              if (dct.title!="视频"&amp;&amp;btn.isNewOpend==true) {

                    var tabtags=document.getElementsByClassName('tabtags')[0].children;

                    for(var i=0;i<tabtags.length;i++){

                          if (tabtags[i].title=="视频") {

                                  tabtags[i].click();

                                  break;

                          }

                    }

              }



              //获取iframe

              var video = $("iframe").contents().find("iframe").contents();

              

              //如果正在加载

              var load = video.find("#loading");

              if (load.css("visibility") != "hidden") {

                    return;

              }

              //获取当前进度

              var spans = video.find("#video > div.vjs-control-bar > div.vjs-progress-control.vjs-control > div").attr("aria-valuenow");

              var pesen = parseInt(spans);

              //获取任务点标记

              //其实就一张图片,通过图片的位置来判断是否完成,大概视频进度在84%左右就会判断任务完成

              //图片地址:https://mooc1-1.chaoxing.com/ananas/css/job-status.png

              //未完成:0% 0%; 完成:0px -24px;但是不能根据这个来进行判断是否下一章,网站会检测出异常,这里用于避免重复刷课.

              var targe=$("iframe").contents().find("#ext-gen1040")[0];

              var positions=getComputedStyle(targe,null)['backgroundPosition'];

              

              //新打开的章节,视频任务已完成,自动下一章

              if (positions=="0px -24px"&amp;&amp;btn.isNewOpend==true) {

                    btn.isNewOpend=true;

                    next_play();

              

              //当前视频还没有完成

              }else if (pesen<95) {

                          play(video);

                          btn.isNewOpend=false;

              //当前进度达到92%,自动下一章,这里也可以改小一点只要不异常就可以

              }else if (pesen>=92) {

                          btn.isNewOpend=true;

                          next_play();

              }else{

                          clearInterval(timer);

              }



              $("#lfsenior").html("自动模式已开启,本章进度:" + spans + "%");

}


复制代码




在浏览器内->F12->找到控制台(console)->复制代码到输入框内->回车->关闭开发者工具->在页面找到被创造的图标->盘它
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|不懂 ( 粤ICP备14042591号-1 )|网站地图

GMT+8, 2024-11-22 07:12 , Processed in 0.073308 second(s), 25 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

返回顶部