本文针对JS初学小白,大神打扰了!!

前言

大二因为迷恋爬虫所以自学了HTML,CSS,JS,但是一直也就是用于在写爬虫的时候分析分析页面,疫情期间因为选了太多的超星尔雅网课,抠门我当然舍不得花钱去刷,所以想起了老朋友JS,于是有趣的事情发生了...........,

思路简述

超星页面视频播放使用的HTML5的video标签实现播放的。 HTML <video> 元素 用于在HTML或者XHTML文档中嵌入媒体播放器,用于支持文档内的视频播放。你也可以将 <video> 标签用于音频内容,但是 元素可能在用户体验上更合适。所以通过使用JS来操作video的属性再加上一些循环判断视频是否播放完毕,自动寻找下一章节就能实现视频自动播放

下面贴出源代码

 //获取所有章节的url
 var article=document.querySelectorAll(".ncells a");
 var checkIsFinish=document.querySelectorAll(".jobUnfinishCount");
 var i=0;
 var flag=0;
 for(i=0;i<checkIsFinish.length;i++){
 if(checkIsFinish[i].value==2){
 break;
 }
 }
​
 //从第一章节开始遍历
 article[++i].click();
 //定时任务,定时检测视频播放情况
 window.setInterval(function(){
 //将网课的第一节视频与其他章节视频区别判断
 if(flag==0&&document.querySelector("#dct3")!=null){
 document.querySelector("#dct2").click();
 flag=1;
 }
 var first=document.querySelector("iframe").contentDocument;
 var second=first.querySelector("iframe").contentDocument;
 //检测视频是否播放完成
 if($("iframe").contents().find(".ans-job-finished").length != 0){
 console.log("完成");
 article[++i].click();
 article[i].click();
 flag=0;
 }else{
 var media=second.querySelector("video");
 media.volume=0;  //设置静音
 //周期检测暂停,这样在网页最小化后也能自动播放
 if(media.paused){
 console.log("检测到暂停");
 media.play();
 }
 }
 },10000);
我想告诉大家这个代码我现在也不知道还能不能用(你还是个人?!!!),因为这学期完美错过选网课所以现在没办法检测代码的可用性,这么长时间页面的布局元素都可能发生改变。但是大家知道了思路,自己实现的过程会很有趣,实现后也会非常有成就感。

最后

正在学习爬虫的可以在公众号后台添加我微信,我原来通过爬虫也实现过fif口语刷任务(现在代码也失效了,但是我可以告诉你思路);也可以访问我的github仓库,我clone一个大神写的到梦空间报任务的项目,并且简单更改实现抢任务,感兴趣的可以研究研究。


重磅资源!!!

关注小白不想当码农微信公众号。

后台回复java核心技术卷关键字领取《java核心技术卷》pdf

回复jvm领取《深入理解Java虚拟机》pdf和《自己动手写jvm

回复设计模式领取《headfirst设计模式》pdf

回复计算机网络领取《计算机网络自顶向下》pdf

最最后

我是不想当码农的小白,平时会写写一些技术博客,推荐优秀的程序员博主给大家还有自己遇到的优秀的java学习资源,希望和大家一起进步,共同成长。

以上内容如有错误,还望指出,感谢

公众号点击交流,添加我的微信,一起交流编程呗!

公众号: 小白不想当码农
image


小白不想当码农
13 声望3 粉丝