您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
课程思政网络培训的视频每隔几分钟会暂停播放,这个脚本可以帮你自动(每分钟检测一次)继续播放,还可以跳过非视频的页面(这个功能没有仔细测试)。只支持在同一个课程内自动播放,播放结束后跳到下一章节,所以请选择一个学分数很大的课程来挂课。
当前为
- // ==UserScript==
- // @name ulearning
- // @namespace http://tampermonkey.net/
- // @version 0.5
- // @description 课程思政网络培训的视频每隔几分钟会暂停播放,这个脚本可以帮你自动(每分钟检测一次)继续播放,还可以跳过非视频的页面(这个功能没有仔细测试)。只支持在同一个课程内自动播放,播放结束后跳到下一章节,所以请选择一个学分数很大的课程来挂课。
- // @author laohoo
- // @match https://ua.ulearning.cn/learnCourse/learnCourse.html*
- // @icon https://www.google.com/s2/favicons?domain=ulearning.cn
- // @grant none
- // ==/UserScript==
- (function() {
- 'use strict';
- console.log(Date(), 'go to do.');
- let tiemOut = 1000*60; // 检测间隔时间,默认为一分钟(1000*60)一次
- let lists = [];
- let index = 0;
- function getPlayList(){
- lists = document.querySelectorAll('.page-item div.page-name.cursor');
- console.log(lists);
- }
- function nextPage(){
- let nextBtn = document.querySelector('.next-page-btn');
- let step = 2;
- console.log(Date(), 'next page.');
- while(step){
- step--;
- if(nextBtn){
- console.log(Date(), 'button.btn-hollow is click.');
- nextBtn.click();
- setTimeout(function(){
- let btn_hollow = document.querySelector('button.btn-hollow');
- if(btn_hollow){
- btn_hollow.click();
- }
- }, 1000);
- }
- }
- nextActivePage();
- }
- function nextActivePage(){
- if(lists.length){
- console.log(Date(), 'play lists.');
- for(var index in lists){
- if(!lists[index].classList.contains('complete')|| !lists[index].classList.contains('active')){
- console.log(Date(), 'not finish',lists[index]);
- lists[index].click();
- break;
- }
- }
- }
- }
- setInterval(function(){
- try{
- let btn_play = document.querySelector('.mejs__overlay-play');
- let playStatus = document.querySelector('div.video-progress div.text span');
- //let videoWrapper = document.querySelector('.video-wrapper');
- //console.log('videoWrapper: ',videoWrapper);
- if(lists.length<2){
- getPlayList();
- }
- if(!btn_play){
- nextPage();
- }else if(lists.length){
- //nextActivePage();
- // console.log('play lists.');
- // for(index in lists){
- // let iconfont= lists[index].querySelector('.iconfont');
- // if(!iconfont.classList.contains('finish')){
- // console.log('not finish',lists[index]);
- // lists[index].click();
- // break;
- // }
- // }
- }
- console.log(Date(), 'btn_play: ',btn_play);
- //console.log('currentTime: ',currentTime.innerText);
- console.log(Date(), 'playStatus: ',playStatus.innerText?playStatus.innerText:"No Status.");
- if(btn_play){
- btn_play.addEventListener("click", function(){
- console.log(Date(), ' have a click.');
- });
- //btn_play.setAttribute('aria-pressed','true');
- if(document.querySelector('.mejs__overlay-button').getAttribute('aria-pressed')==='false'){
- if(playStatus.innerText !='已看完'){
- btn_play.click();
- console.log(Date(), ' play continue... ');
- }else{
- if(lists.length){
- console.log('play lists.');
- for(index in lists){
- //let iconfont= lists[index].querySelector('.iconfont');
- if(!lists[index].classList.contains('complete')|| !lists[index].classList.contains('active')){
- console.log('not finish',lists[index]);
- lists[index].click();
- break;
- }
- }
- }
- }
- }
- }
- }
- catch(e){
- console.log(Date(), "Error in this userscript: ",e.message);
- }
- }, tiemOut);
- // Your code here...
- })();
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址