网课、网页视频倍速播放简单脚本

本文介绍了一种通过JavaScript脚本实现在线视频倍速播放的方法,适用于Enaea教育网,用户只需修改匹配地址并在油猴插件中使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

不管在学校还是在单位,总是难免遇到刷网课的时候,而且现在很多网课网站的视频都不让倍速,但是只要在网站看,就能通过脚本,更改视频的播放速度,下边是我自己用的一个调整视频播放速度的脚本,发给大家看看。应用到别的网址,只要改@match后边的地址就可以了。
可以在油猴里用, 倍速脚本

// ==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)
    // Your code here...
})();

脚本原理

脚本运行原理比较简单,在网站里加了一个时钟事件,时间间隔是5000,也就是5s,不停获取当前网页内的视频元素,‘video’,之后便利所有video,把倍率调整至3,时间间隔和倍率,大家都可以自己定义。我自己是用着比较舒服,简单的一。

### 已知解决方案 针对自动播放加速的需求,可以参考现有的开源工具和技术栈来构建类似的脚本。以下是具体的技术方案及相关说明: #### 技术选型与实现方式 1. **AutoYuketangforHIT 的启发** AutoYuketangforHIT 是一个专门为哈尔滨工业大学雨堂设计的自动化工具[^1]。该工具的核心功能是通过 Selenium 库模拟浏览器行为,从而实现视频的自动播放和学习任务的完成。虽然此工具专门面向特定平台,但其设计理念可被移植至其他在线教育平台。 2. **Selenium 的作用** Selenium 是一款强大的网页自动化测试工具,能够模拟用户的各类操作,如点击按钮、填写表单以及控制媒体播放器的行为等[^3]。借助 Selenium,开发者可以通过编写 Python 脚本来实现对目标站的操作逻辑定制化处理。 3. **Python 的优势** 对于编程基础较薄弱的学习者而言,Python 是一种易于上手的语言,并且具备丰富的第三方库支持[^2]。这使得即使是没有深厚编码经验的人也能较快地上手开发简单的自动化程序。 4. **个性化推荐系统的补充思路** 如果希望进一步提升用户体验,则可以考虑引入机器学习算法建立个性化的程推荐机制[^4]。不过这一部分超出了单纯“自动播放”的范畴,更多适用于长期项目规划阶段思考如何优化整体服务流程。 #### 示例代码片段 下面给出一段基于上述提到技术框架的基础版本实现示例: ```python from selenium import webdriver import time def auto_play_course(url, username, password): driver = webdriver.Chrome() # 初始化Chrome WebDriver实例对象 try: # 登录页面加载及账号密码提交过程省略... # 假设已经成功登陆进入到了某个具体的程详情页地址url处 driver.get(url) video_element = driver.find_element_by_tag_name('video') # 查找<video>标签节点 while True: current_time = float(video_element.get_attribute('currentTime')) duration = float(video_element.get_attribute('duration')) if not math.isclose(current_time, duration): # 判断当前时间是否接近总时长 print(f'Playing... Current Time:{current_time:.2f}s / Total Duration:{duration:.2f}s') # 设置倍速播放(需确认实际环境中是否存在对应属性接口可用) js_command = f'document.querySelector("video").playbackRate={desired_speed};' driver.execute_script(js_command) time.sleep(check_interval) # 定义间隔多久再次检测进度变化情况 else: break finally: driver.quit() if __name__ == '__main__': course_url = 'https://example.com/course/video' user_info = {'username': '', 'password': ''} desired_speed = 2.0 # 设定期望加快比例为两倍速度 check_interval = 5 # 每隔五秒重新评估一次状态更新频率 auto_play_course(course_url, **user_info) ``` 注意:以上仅为示意性质伪码结构展示,请根据实际情况调整适配相应站点的具体DOM结构调整查找定位策略等内容后再投入使用! --- ###
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值