js如何操作video标签

这篇具有很好参考价值的文章主要介绍了js如何操作video标签。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一.简介

在做web ui自动化时,遇到操作视频的时候有时比较让人头疼,定位时会发现只有一个<video>标签,用selenium来实现的话比较麻烦,使用js后我们只需定位到video标签,然后通过js 中处理video的相关属性和方法就可实现,我们继续往下看。

二.实例用法

1.获取视频的总时长(duration)

# document.querySelector('video').duration  # js语法
js = "return document.querySelector('video').duration"
print(driver.execute_script(js))

2.获取当前播放的时长(currentTime)

js="return document.querySelector('video').currentTime"

currentTime还可以指定当前播放的时长

# 控制进度
time_list = [5, 30, 40, 50, 60, 70, 80, 90, 100]  # 秒数
for i in time_list:
    js = "document.querySelector('video').currentTime="+str(i)
    driver.execute_script(js)
    time.sleep(2)

3.判断当前视频是播放还是暂停状态(paused)

# 判断视频处于暂停还是播放  true暂停,false播放
js = "return document.querySelector('video').paused"
driver.execute_script(js)

4.暂停:pause(),播放:play()视频

# 暂停
js = "document.querySelector('video').pause()"
driver.execute_script(js)
# 播放
js = "document.querySelector('video').play()"
driver.execute_script(js)

5.设置播放倍数(playbackRate)

# 设置播放倍数
js = "document.querySelector('video').playbackRate=10"  # 设置10倍数播放
driver.execute_script(js)

当你在web端刷课/刷剧时,苦于页面设置进度最快也就三倍速,此时playbackRate可以帮助你解决这个烦恼

6.设置清晰度(src)

# 设置清晰度,通过设置播放源来设置
js = "document.querySelector('video').src='xxxx'"

设置清晰度是通过设置video标签中src属性来实现的,因此需要先知道src播放源

7.设置视频播放音量大小(volume)

# js = "retrun document.querySelector('video').volume"  # 获取当前音量大小
js_su = "document.querySelector('video').volume=1"  # 设置当前音量为最大
driver.execute_script(js_su)

volume的值:0表示音量最小,1表示最大,0.x表示设置音量大小为x0%(x为1-9数字)

若当前视频是静音状态,此时设置volume是没有效果的,因为执行volume 属性的取值范围为 0(静音)到 1(最大音量),不包括 -1(取消静音)。我们可以通过设置muted来取消静音状态后再去设置音量大小。

js = "document.querySelector('video').muted=false"  # 解除禁,会暂停视频

muted为false是表示解除静音,此时视频会暂停。为true是开始静音。

8.设置循环播放(loop)

# loop是否循环播放,true设置循环,false不循环
# js = "return document.querySelector('video').loop"  # 判断当前是否处于循环状态
js = "document.querySelector('video').loop=true"
driver.execute_script(js)

三.其它用法

js官网参考:https://developer.mozilla.org/en-US/docs/Learn/Performance/video

poster:视频封面

preload:预加载

autoplay:自动播放

controls:浏览器自带的控制条

width:视频宽度

height:视频高度

四.遗留问题

本人学习后发现有两个问题暂没解决,知道的小伙伴可留言告知

1.全屏/退出全屏(chatgpt说的是requestFullscreen()可执行全屏,但我试了没有反应,本人谷歌浏览器)

2.获取视频弹幕信息文章来源地址https://www.toymoban.com/news/detail-492256.html

到了这里,关于js如何操作video标签的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【标签bug】video标签部分mp4文件在ios中无法自动播放的问题

    在安卓端和h5页面调试端,video标签下的mp4格式文件均可以播放,但是video标签部分mp4文件在ios中无法自动播放的问题,搜了很多资料有如下解决方案 前四个属性: muted:静音播放,一般浏览器chrome为例,用户需要在页面上操作一次,才能播放视频,不允许用户进入后直接显示

    2024年02月06日
    浏览(70)
  • 谷歌chrome浏览器无法自动播放video标签视频的问题

    问题根源详见: Chrome中的自动播放政策  https://developer.chrome.com/blog/autoplay/  The Autoplay Policy launched in Chrome 66 for audio and video elements and is effectively blocking roughly half of unwanted media autoplays in Chrome. For the Web Audio API, the autoplay policy launched in Chrome 71. This affects web games, some WebRTC appli

    2024年02月11日
    浏览(99)
  • Moonbeam操作指南|如何使用Gelato创建自动化任务

    Gelato是一个Web3去中心化自动化网络,允许开发者横跨多个基于EVM兼容区块链上自动化和连接任意的智能合约执行。 📑阅读中文版详细操作教程 举例来说,我们将使用MetaMask作为钱包。同时,您的钱包余额中需要有一些GLMR用于支付自动化交易的gas费用。 开始之前,请先前往

    2024年02月02日
    浏览(49)
  • 我们在操作自动化测如何实现用例设计实例

    在编写用例之间,笔者再次强调几点编写自动化测试用例的原则: 1、一个脚本是一个完整的场景,从用户登陆操作到用户退出系统关闭浏览器。 2、一个脚本脚本只验证一个功能点,不要试图用户登陆系统后把所有的功能都进行验证再退出系统 3、尽量只做功能中正向逻辑的

    2024年02月05日
    浏览(37)
  • 【selenium自动化测试】如何定位页面元素,及对页面元素的操作方法

    selenium元素定位 ​selenium定位元素的方式有8种。 fild_element(by,value):by表示使用的定位方式,定位方式可以参见By类。value表示值,例如:根据id定位 By.ID,value=id属性的值。该方法返回元素对象,返回值如下: 这个返回结果说明:返回值为WebElement类的对象,元素在使用方法时

    2024年02月10日
    浏览(68)
  • html网站video标签blob视频如何下载

    在淘宝或tdtu知乎等有时想下载里面的视频资源,看了一下视频标签里的video不是MP4格式url,而是blob+url的方式。 是blob:https并不是一种协议,而是html5中blob对象在赋给video标签后生成的一串标记,blob对象对象包含的数据,浏览器内部会解析 关于Blob原理和方式 blob 其实是 h5 表征

    2024年02月21日
    浏览(62)
  • 实现html页面插入视频的自动播放、视频播放结束后的事件触发(video标签)

    要实现自动播放需要同时使用autoplay和muted属性,简单示例代码如下: html代码: css代码: 要实现视频播放结束后的事件触发需要使用addEventListener(“ended”, function () {})进行事件监听,简单示例代码如下: html代码: css代码: js代码: (1)菜鸟网址:https://www.runoob.com/tags/t

    2024年02月05日
    浏览(50)
  • 无需繁琐手工操作,如何利用Web自动化测试元素定位做到快速高效的测试?

    在Web自动化测试中,元素定位是非常重要的环节。因为我们需要找到需要进行操作的页面元素,例如按钮、输入框、下拉菜单等等。元素定位可以帮助我们在自动化测试中对这些元素进行操作,如点击、输入和验证等。 在华为工作了10年的大佬出的Web自动化测试教程,华为现

    2024年02月05日
    浏览(99)
  • video标签设置了autoplay,自带音频的视频在谷歌浏览器仍无法自动播放

    原因分析:谷歌浏览器可以自动播放视频,不能自动播放音频。如果视频中自带音频就会导致该视频无法自动播放。 解决办法:在video标签加上静音属性muted,自带音频的视频就可以自动播放了,但是该视频无声音。 备注:1、这是谷歌浏览器自身的问题。2、Safari浏览器可正

    2024年02月12日
    浏览(64)
  • 标签准备——labelIMG工具使用——自动化标注

    在实际生产项目中,为了提升目标识别的准确性,我们往往需要3000-5000张图片进行标注。而直接参与过标注的人都有一个共同的感觉,就是标注是一个简单、枯燥、无聊且十分耗时费力的差事。为此,我们可以在有了初步训练模型的基础上,采用更加自动化的方式进行标注,

    2024年02月12日
    浏览(56)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包