# 南宁市西乡塘中小学幼教师刷课 **Repository Path**: tuziang/nanning-xixiangtang ## Basic Information - **Project Name**: 南宁市西乡塘中小学幼教师刷课 - **Description**: 南宁市西乡塘中小学幼教师培训网刷课脚本 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-02-26 - **Last Updated**: 2026-02-26 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 南宁市西乡塘中小学幼教师培训网刷课脚本 ## 脚本介绍 该油猴脚本用于 南宁市西乡塘中小学幼教师培训网 的辅助学习,使用JavaScript编写,适配网址:http://xxtpx.southteacher.com/ **脚本功能如下:** 1. 视频自动播放 自动检测并播放页面中的视频 2. 倍速播放调节 支持1.3倍-2.6倍速播放 3. 自动静音功能 自动将视频设置为静音 4. 防暂停检测 监听暂停事件并立即恢复 5. 自动切课机制 视频播放完后自动跳转下一课 6. 防检测系统 模拟用户鼠标和键盘活动 **脚本安装地址:** 暂时下架 ## 代学服务 **如需代学,请联系客服,支持闲鱼交易。** - 微信联系:yizhituziang ![https://jiaobenmiao.com/img/weixin.jpg](https://jiaobenmiao.com/img/weixin.jpg) - QQ联系:2422270452 ![https://jiaobenmiao.com/img/qq.jpg](https://jiaobenmiao.com/img/qq.jpg) ## 安装教程 ### 1.安装浏览器扩展插件 首先需要给我们的浏览器安装上脚本猫插件,这是运行所有用户脚本的基础,如果浏览器已经安装过了脚本猫或者油猴插件,那么可以跳过这一步。推荐使用edge浏览器,安装插件更方便。 浏览器打开网址:[https://docs.scriptcat.org/](https://docs.scriptcat.org/) ### 2.安装刷课脚本 打开脚本安装地址后,在页面点击 **"安装脚本"** 按钮,接着在弹出的窗口点击 **"安装"** ,之后就会提示"安装成功"。 ### 3.体验脚本功能 安装脚本后,需要重新进入学习站点,如果之前已经打开课程学习页面,那么需要刷新页面后脚本才会生效。 ## 核心代码 ```js // 南宁市西乡塘中小学幼教师培训网辅助脚本 class XxtpxHelper { constructor() { this.settings = { autoPlayEnabled: true, playbackRate: 2.3, autoMuteEnabled: true, autoNextEnabled: true, antiDetectionEnabled: true, mainLoopInterval: 2000, activityInterval: 20000, retryAttempts: 7 }; this.retryCount = 0; this.init(); } log(message) { console.log(`[西乡塘教师培训] ${message}`); } init() { this.log('脚本正在初始化...'); if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', () => { this.start(); }); } else { this.start(); } } start() { this.log('南宁市西乡塘中小学幼教师培训网刷课脚本已启动'); setInterval(() => { this.runMainLoop(); }, this.settings.mainLoopInterval); if (this.settings.antiDetectionEnabled) { setInterval(() => { this.simulateUserBehavior(); }, this.settings.activityInterval); } } getVideoElement() { const videoSelectors = [ 'video', '.video-player-wrapper video', '#coursePlayer video', '.lesson-video-container video', '.media-player video', '[class*="video"] video', '[id*="player"] video' ]; for (let idx = 0; idx < videoSelectors.length; idx++) { const video = document.querySelector(videoSelectors[idx]); if (video) { this.log(`定位到视频元素: ${videoSelectors[idx]}`); return video; } } return null; } configureVideoSettings(video) { if (!video) return; if (this.settings.autoMuteEnabled && !video.muted) { video.muted = true; this.log('视频已设置为静音模式'); } if (video.playbackRate !== this.settings.playbackRate) { video.playbackRate = this.settings.playbackRate; this.log(`播放倍速已调整为 ${this.settings.playbackRate}x`); } video.addEventListener('ratechange', () => { if (video.playbackRate !== this.settings.playbackRate) { video.playbackRate = this.settings.playbackRate; } }); } tryPlayVideo(video) { if (!video) return; if (video.paused && !video.ended) { this.log('检测到视频处于暂停状态,尝试恢复播放'); video.play().then(() => { this.log('视频恢复播放成功'); this.retryCount = 0; }).catch(error => { this.log(`自动播放失败,错误信息: ${error.message}`); this.retryCount++; if (this.retryCount < this.settings.retryAttempts) { this.log(`尝试点击播放按钮 (${this.retryCount}/${this.settings.retryAttempts})`); this.clickPlayButton(); } }); } } clickPlayButton() { const buttonSelectors = [ '.play-icon-btn', '.video-play-button', '.btn-start-play', '.vjs-play-control', '.play-button', '#playVideo', '[class*="play"]', 'button[title*="播放"]' ]; for (const selector of buttonSelectors) { const button = document.querySelector(selector); if (button && button.offsetParent !== null) { button.click(); this.log(`已点击播放按钮: ${selector}`); break; } } } switchToNextLesson() { if (!this.settings.autoNextEnabled) return; const video = this.getVideoElement(); if (!video || !video.ended) return; this.log('课程播放完毕,准备切换到下一课'); const nextBtnSelectors = [ '.next-course-button', '.next-chapter-link', '.btn-next-lesson', '.lesson-next-btn', 'a[title*="下一课"]', 'a[title*="下一讲"]', '[class*="next"]' ]; for (const selector of nextBtnSelectors) { const btn = document.querySelector(selector); if (btn && btn.offsetParent !== null) { btn.click(); this.log('已点击下一课按钮'); break; } } } simulateUserBehavior() { if (!this.settings.antiDetectionEnabled) return; const posX = Math.random() * window.innerWidth; const posY = Math.random() * window.innerHeight; const mouseMoveEvent = new MouseEvent('mousemove', { view: window, bubbles: true, cancelable: true, clientX: posX, clientY: posY }); document.dispatchEvent(mouseMoveEvent); const keyEvent = new KeyboardEvent('keydown', { key: 'Shift', bubbles: true }); document.dispatchEvent(keyEvent); if (Math.random() > 0.6) { window.scrollBy(0, Math.random() > 0.5 ? 35 : -35); } this.log('已模拟用户行为'); } runMainLoop() { const video = this.getVideoElement(); if (video) { this.configureVideoSettings(video); this.tryPlayVideo(video); this.switchToNextLesson(); } } } new XxtpxHelper(); ```