// ==UserScript== // @name Beisen Video Auto-play // @namespace http://tampermonkey.net/ // @version 1.0 // @description 自动播放Beisen视频并静音、加速播放速度 // @author Lemonade // @match https://hnie.careersky.cn/jixun/VodLesson/* // @grant none // ==/UserScript== /* * 需知:本脚本绝不是恶意脚本,旨在方便各位大学生 “save” 时间,用来干人生中更加重要的事情。 * 更新日志: * 1.0 - 2025-05-17 - 发布第一个版本,功能简单,仅实现了自动播放、静音、加速播放速度功能; * 已知问题: * 1. 脚本一旦开始执行就没法停下来,不过好像无所谓,可以考虑加个开关; * 2. 打开 debug 你会发现脚本在疯狂输出日志,不知道是不是页面的问题,但考虑到之前如果只检查一此的话,压根检查不到视频元素,还是不要改了吧; * 3. 如果页面元素发生变化,我得修正代码,但考虑到这个页面用的是别的API,可能不会改动太大; * 4. 只有手动打开视频播放页面后,脚本才会执行,没法自动浏览课程页面自动打开播放; * 5. 所有视频播放完毕后没有提醒,不太好; * 未来更新想法: * 1. 增加开关,可以手动开启/关闭脚本; * 2. 增加控制界面,来自定义播放速度、静音、自动播放等设置; */ (function() { 'use strict'; // debug 模式,开启后会输出调试信息,一般不用开启 var debug = false; function log(message) { if (debug) { console.log(message); } else { console.log('Debug 未开启'); } } function autoPlay(video) { video.play(); log('视频已播放'); } function muteVideo(video) { video.muted = true; log('视频已静音'); } function speedUpVideo(video) { video.playbackRate = 10; log('视频已加速10倍'); } function main() { const container = document.querySelector('.video-play-container'); const video = container ? container.querySelector('video') : null; if (video) { autoPlay(video); muteVideo(video); speedUpVideo(video); } else { log('未找到视频元素'); } } const observer = new MutationObserver((mutationsList, observer) => { for (let mutation of mutationsList) { if (mutation.type === 'childList') { main(); } } }); // 开始观察整个文档的变化 observer.observe(document.body, { childList: true, subtree: true }); // 一开始先检查一次 setTimeout(main, 1500); })();