selenium+python 处理html5的视频播放

HTML5中定义了新元素,该元素提供了javascript接口和多种的方法和属性,javascript函数有个内置的对象

arguments。arguments对象包含了函数调用的参数数组,[0]表示去对象的第一个值,currentSrc返回当前视频/音频的URL,如果未设置的时候,返回NULL。

并且提供了load(),play(),pause()方法来加载,播放,暂停视频

PS:使用find_element_by_xpath()来定位元素的时候,注意需要一层一层逐层定位,这个根据文档中提供的代码,查了好久的资料才搞定的,注意不要踩坑~~~

原文:https://blog.csdn.net/u012605082/article/details/80574530

from selenium import webdriver
from time import sleep

driver=webdriver.Firefox()
driver.get("http://videojs.com/")
#通过xpath来定位元素的时候需要一层一层逐层定位
video=driver.find_element_by_xpath("/html/body/section[1]/div/video")

#返回播放文件地址
url=driver.execute_script("return arguments[0].currentSrc;",video)
print(url)

#播放视频
print("start")
driver.execute_script("return arguments[0].play()",video)

#播放15s
sleep(15)

#暂停视频
print("stop")
driver.execute_script("arguments[0].pause()",video)

你可能感兴趣的:(selenium+python 处理html5的视频播放)