这两天学校安排了一个任务,要在线上完成一个考试,但是考试之前还得看完所有视频课程。登上去一看,好家伙,总共193个课程,乖乖学吧。在我认认真真地学完所有课程之后心血来潮,想着能不能快速刷课,然后立马动手。
最无脑的方法——改倍速(仅针对视频课程)
在这些课程中不乏一些视频类课程,有些还不能拖进度条,针对这种课程,第一个想到的就是改倍速,方法又简单。以chrome浏览器为例,在页面上按F12打开开发者工具,并执行下列三步操作
打开开发工具并使用元素选择器
选中video标签
修改视频倍速
最终效果
进阶方法——调用内部代码
使用上述方法的话只能针对视频教程,而且每个视频都得来这么一下还是挺繁琐的,接下来就使用更简单的方法,适用于有一定前端基础的同学。
学习完课程后弹出的弹窗
在学习完课程后,都会弹出这么一个弹窗,然后查看network标签页会发现页面调用了一个finish接口,看来它是通过调接口的方式来修改我们的是否已完成学习,那么我们只需要手动来调用一下这个接口就完成我们的学习了。
调用了finish接口
接下来就得看它是在什么地方调用了这个接口,找出这段代码,并执行它就行了。
全局查找代码
定位代码
从上图中可以看出它封装了一个finishWxCourse方法来调用Ajax请求,没有源码阅读经验的同学也可以注意到上图蓝框中出现的“恭喜,您已完成本微课的学习”的字样正是文章上述中出现的学习完课程后出现的弹窗。如此一来,我们直接在页面中通过console控制台调用这个方法就可以直接完成我们课程的学习了。
但是,每打开一个视频都要用控制台调用方法也太麻烦了,接下来就用一种更方便的方法,但是需要用到一个chrome浏览器插件:tempermonkey(油猴),简单来讲,这是一个可以让你在页面上跑任意js代码的一个插件,有梯子的同学直接上应用商店搜索安装即可,翻不了墙的同学可以自行百度查找安装教程,在此就不多赘述了。
安装后添加新脚本
编辑脚本后保存
不同域名
值得注意的是,在我的这个网课网站中,video元素是在一个嵌套的iframe元素下的,所以脚本代码中的@match应该填写iframe的src所对应域名mcwk.mycourse.cn而不是weiban.mycourse.cn
再返回页面刷新即可看到脚本生效,一进入页面直接弹出课程已完成。至此,本文结束,这里只提供一些思路,不仅限于该网站,也不仅限于刷网课,更多在于如何利用前端技术来帮助我们完成一些简单但又繁琐的操作,提高我们的生活和工作的效率。
作者:古伦木_4b51
链接:https://www.jianshu.com/p/f7eed4d0a3b0
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。