学习公社、华兴科软网课培训倍速及自动播放下一集脚本学习

本文主要是介绍学习公社、华兴科软网课培训倍速及自动播放下一集脚本学习,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

提示:文章含有所有相关代码,但文主不是相关专业,方法并非最优

文章目录

  • 前言
  • 一、网课首页
  • 二、视频倍速
  • 三.、学习公社分析
    • 1. 第一部分自动点击代码
    • 2. 第二部分代码
  • 四、华兴科软分析
  • 五、脚本使用
  • 总结


前言

文主最近有很多网课要刷,典型的就是学习公社和华兴科软,不知道有没有其他小伙伴了解过,反正我个人觉得是很头大,在网上搜索了很多相关的脚本,但也看不懂,也没法拿过来用,就自己写了个简单粗暴的,方法肯定不是最优的,但凑活能用。


提示:以下是本篇文章正文内容

一、网课首页

学习公社:https://study.enaea.edu.cn/*
华兴科软:https://hxpxxy.cn/*

二、视频倍速

因为学习公社网课不能倍速,而华兴科软只能二倍,所以优先实现视频倍速的功能,用的是最简单的逻辑,目前两个网址都能用,就是加一个时钟事件,不停获取当前网页内的‘video’元素,并把所有‘video’播放速度更改。代码如下:

window.setInterval(function(){var v=document.getElementsByTagName('video');for (var i=0;i<v.length;i++){if(v[i].playbackRate!=3){v[i].playbackRate = 3;}}},5000)

其中,3是倍率,5000是时间间隔,可以随便改。

三.、学习公社分析

因为文主在写这篇文章时,自己的学习公社视频已经学习完,不能再打开了,所以只能照着代码说一下自己的思路,无法对照实际截图来看。代码分为两部分,一部分是播放页面的,可以更改播放速度,并自动点击每隔一段时间弹出来的“继续学习”按钮。另一部分是课程页面的,可以检测所有课程播放进度,已学习课程都是100%时,自动切换下一节课。

1. 第一部分自动点击代码

// ==UserScript==
// @name         点击弹窗
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  try to take over the world!
// @author       You
// @match        https://study.enaea.edu.cn/*
// @icon         data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==
// @run-at       document-end
// @grant        none
// ==/UserScript==(function() {'use strict';window.setInterval(function(){var v=document.getElementsByTagName('video');for (var i=0;i<v.length;i++){if(v[i].playbackRate!=3){v[i].playbackRate = 3;}}},5000)window.setInterval(function(){if($('button:contains(继续学习)').text()!='')$('button:contains(继续学习)')[0].click()},5000)// Your code here...
})();

其中获取继续学习按钮元素,和点击该按钮,都是用时钟事件不断检测的,会占用资源,但我不会别的,就这么写了,哈哈。

2. 第二部分代码

// ==UserScript==
// @name         自动切换
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  try to take over the world!
// @author       You
// @match        https://study.enaea.edu.cn/circleIndexRedirect.do?action=toNewMyClass&type=course&circleId=*
// @icon         data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==
// @run-at       document-end
// @grant        none
// ==/UserScript==(function() {'use strict';window.setInterval(function(){location.href = location.href;var progressValues=document.getElementsByClassName('progressvalue'); //获取所有课程进度值var startbuttons=document.getElementsByClassName('golearn  ablesky-colortip  saveStuCourse');//获取开始学习按钮var isEnd=true;//遍历所有进度,查看已学习课程是否都学至进度100%for (var i = 0; i < progressValues.length; i++) {if(progressValues[i].textContent!='0%' && progressValues[i].textContent!='100%'){isEnd=false;break;}}//若已学完当前课程,切换下一集播放if(isEnd){for (var j = 0; j < progressValues.length; j++) {if(progressValues[j].textContent=='0%'){startbuttons[j].click();break;}}}},3*60*1000)// Your code here...
})();

代码中的进度值获取,和开始按钮获取的‘ClassName’都是F12里找的,就是下图标注的两个地方,通过不断获取进度值,判断是否达到100%,若已达到,就点击下一个进度0%的视频,进行学习。
学习公社进度和学习按钮

四、华兴科软分析

华兴科软学习界面如下
华兴科软学习界面
写脚本实现两个功能,一是调节视频播放速度,二是自动切换播放‘未完成’的视频。
代码如下:

// ==UserScript==
// @name         华兴科软视频
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  try to take over the world!
// @author       Liji
// @match        https://hxpxxy.cn/*
// @icon         data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==
// @run-at       document-end
// @grant        none
// ==/UserScript==(function() {'use strict';//视频速度调节window.setInterval(function(){var v=document.getElementsByTagName('video');for (var i=0;i<v.length;i++){if(v[i].playbackRate!=3){v[i].playbackRate = 3;}}},5000)//自动播放下一个视频window.setInterval(function(){var allDoingProject=document.getElementsByClassName('doing');       //获取正在进行中的视频var allNoStartProject=document.getElementsByClassName('no-start');  //获取未开始的视频//播放未开始的视频if(allDoingProject.length==0){if(allNoStartProject.length!=0){allNoStartProject[0].click();setTimeout(function() {const videos = document.querySelectorAll('video');videos[0].play();}, 5000);}}},5000)// Your code here...
})();

五、脚本使用

以上几个脚本,都能够直接在油猴脚本中使用,油猴脚本安装方法及使用可以在其他教程中找到,这里就不详细展开了。
安装好油猴脚本插件后,点击新建脚本,将上述所需脚本全选复制粘贴,之后保存,关闭浏览器,重新打开相关网站,即可自动启用。


总结

以上就是两个不太主流的网课学习网站的网课学习脚本,也正因为不太主流,所以网上与其相关的成熟脚本应用较少,所以只能自己写一个凑活能用的,代码比较粗糙,而且解决方法也不尽完美,不过用起来还是比较简单的,希望对大家有所帮助吧。

这篇关于学习公社、华兴科软网课培训倍速及自动播放下一集脚本学习的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/783282

相关文章

Python3脚本实现Excel与TXT的智能转换

《Python3脚本实现Excel与TXT的智能转换》在数据处理的日常工作中,我们经常需要将Excel中的结构化数据转换为其他格式,本文将使用Python3实现Excel与TXT的智能转换,需要的可以... 目录场景应用:为什么需要这种转换技术解析:代码实现详解核心代码展示改进点说明实战演练:从Excel到

Python脚本实现图片文件批量命名

《Python脚本实现图片文件批量命名》这篇文章主要为大家详细介绍了一个用python第三方库pillow写的批量处理图片命名的脚本,文中的示例代码讲解详细,感兴趣的小伙伴可以了解下... 目录前言源码批量处理图片尺寸脚本源码GUI界面源码打包成.exe可执行文件前言本文介绍一个用python第三方库pi

shell脚本自动删除30天以前的文件(最新推荐)

《shell脚本自动删除30天以前的文件(最新推荐)》该文章介绍了如何使用Shell脚本自动删除指定目录下30天以前的文件,并通过crontab设置定时任务,此外,还提供了如何使用Shell脚本删除E... 目录shell脚本自动删除30天以前的文件linux按照日期定时删除elasticsearch索引s

Java深度学习库DJL实现Python的NumPy方式

《Java深度学习库DJL实现Python的NumPy方式》本文介绍了DJL库的背景和基本功能,包括NDArray的创建、数学运算、数据获取和设置等,同时,还展示了如何使用NDArray进行数据预处理... 目录1 NDArray 的背景介绍1.1 架构2 JavaDJL使用2.1 安装DJL2.2 基本操

10个Python自动化办公的脚本分享

《10个Python自动化办公的脚本分享》在日常办公中,我们常常会被繁琐、重复的任务占据大量时间,本文为大家分享了10个实用的Python自动化办公案例及源码,希望对大家有所帮助... 目录1. 批量处理 Excel 文件2. 自动发送邮件3. 批量重命名文件4. 数据清洗5. 生成 PPT6. 自动化测试

使用Java实现一个解析CURL脚本小工具

《使用Java实现一个解析CURL脚本小工具》文章介绍了如何使用Java实现一个解析CURL脚本的工具,该工具可以将CURL脚本中的Header解析为KVMap结构,获取URL路径、请求类型,解析UR... 目录使用示例实现原理具体实现CurlParserUtilCurlEntityICurlHandler

10个Python Excel自动化脚本分享

《10个PythonExcel自动化脚本分享》在数据处理和分析的过程中,Excel文件是我们日常工作中常见的格式,本文将分享10个实用的Excel自动化脚本,希望可以帮助大家更轻松地掌握这些技能... 目录1. Excel单元格批量填充2. 设置行高与列宽3. 根据条件删除行4. 创建新的Excel工作表5

Linux中shell解析脚本的通配符、元字符、转义符说明

《Linux中shell解析脚本的通配符、元字符、转义符说明》:本文主要介绍shell通配符、元字符、转义符以及shell解析脚本的过程,通配符用于路径扩展,元字符用于多命令分割,转义符用于将特殊... 目录一、linux shell通配符(wildcard)二、shell元字符(特殊字符 Meta)三、s

Python脚本实现自动删除C盘临时文件夹

《Python脚本实现自动删除C盘临时文件夹》在日常使用电脑的过程中,临时文件夹往往会积累大量的无用数据,占用宝贵的磁盘空间,下面我们就来看看Python如何通过脚本实现自动删除C盘临时文件夹吧... 目录一、准备工作二、python脚本编写三、脚本解析四、运行脚本五、案例演示六、注意事项七、总结在日常使用

java脚本使用不同版本jdk的说明介绍

《java脚本使用不同版本jdk的说明介绍》本文介绍了在Java中执行JavaScript脚本的几种方式,包括使用ScriptEngine、Nashorn和GraalVM,ScriptEngine适用... 目录Java脚本使用不同版本jdk的说明1.使用ScriptEngine执行javascript2.