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

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

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

文章目录

  • 前言
  • 一、网课首页
  • 二、视频倍速
  • 三.、学习公社分析
    • 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

相关文章

Linux脚本(shell)的使用方式

《Linux脚本(shell)的使用方式》:本文主要介绍Linux脚本(shell)的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录概述语法详解数学运算表达式Shell变量变量分类环境变量Shell内部变量自定义变量:定义、赋值自定义变量:引用、修改、删

Go学习记录之runtime包深入解析

《Go学习记录之runtime包深入解析》Go语言runtime包管理运行时环境,涵盖goroutine调度、内存分配、垃圾回收、类型信息等核心功能,:本文主要介绍Go学习记录之runtime包的... 目录前言:一、runtime包内容学习1、作用:① Goroutine和并发控制:② 垃圾回收:③ 栈和

Android学习总结之Java和kotlin区别超详细分析

《Android学习总结之Java和kotlin区别超详细分析》Java和Kotlin都是用于Android开发的编程语言,它们各自具有独特的特点和优势,:本文主要介绍Android学习总结之Ja... 目录一、空安全机制真题 1:Kotlin 如何解决 Java 的 NullPointerExceptio

Golang实现Redis分布式锁(Lua脚本+可重入+自动续期)

《Golang实现Redis分布式锁(Lua脚本+可重入+自动续期)》本文主要介绍了Golang分布式锁实现,采用Redis+Lua脚本确保原子性,持可重入和自动续期,用于防止超卖及重复下单,具有一定... 目录1 概念应用场景分布式锁必备特性2 思路分析宕机与过期防止误删keyLua保证原子性可重入锁自动

重新对Java的类加载器的学习方式

《重新对Java的类加载器的学习方式》:本文主要介绍重新对Java的类加载器的学习方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、介绍1.1、简介1.2、符号引用和直接引用1、符号引用2、直接引用3、符号转直接的过程2、加载流程3、类加载的分类3.1、显示

CentOS和Ubuntu系统使用shell脚本创建用户和设置密码

《CentOS和Ubuntu系统使用shell脚本创建用户和设置密码》在Linux系统中,你可以使用useradd命令来创建新用户,使用echo和chpasswd命令来设置密码,本文写了一个shell... 在linux系统中,你可以使用useradd命令来创建新用户,使用echo和chpasswd命令来设

redis中使用lua脚本的原理与基本使用详解

《redis中使用lua脚本的原理与基本使用详解》在Redis中使用Lua脚本可以实现原子性操作、减少网络开销以及提高执行效率,下面小编就来和大家详细介绍一下在redis中使用lua脚本的原理... 目录Redis 执行 Lua 脚本的原理基本使用方法使用EVAL命令执行 Lua 脚本使用EVALSHA命令

Java学习手册之Filter和Listener使用方法

《Java学习手册之Filter和Listener使用方法》:本文主要介绍Java学习手册之Filter和Listener使用方法的相关资料,Filter是一种拦截器,可以在请求到达Servl... 目录一、Filter(过滤器)1. Filter 的工作原理2. Filter 的配置与使用二、Listen

Java使用ANTLR4对Lua脚本语法校验详解

《Java使用ANTLR4对Lua脚本语法校验详解》ANTLR是一个强大的解析器生成器,用于读取、处理、执行或翻译结构化文本或二进制文件,下面就跟随小编一起看看Java如何使用ANTLR4对Lua脚本... 目录什么是ANTLR?第一个例子ANTLR4 的工作流程Lua脚本语法校验准备一个Lua Gramm

微信公众号脚本-获取热搜自动新建草稿并发布文章

《微信公众号脚本-获取热搜自动新建草稿并发布文章》本来想写一个自动化发布微信公众号的小绿书的脚本,但是微信公众号官网没有小绿书的接口,那就写一个获取热搜微信普通文章的脚本吧,:本文主要介绍微信公众... 目录介绍思路前期准备环境要求获取接口token获取热搜获取热搜数据下载热搜图片给图片加上标题文字上传图片