zoukankan      html  css  js  c++  java
  • 测试HTML5语言实现的视频播放器

    获取HTML5语言实现的视频播放器视频文件的地址、时长,控制播放器进行播放或暂停播放等操作。

    #!usr/bin/env python  
    #-*- coding:utf-8 -*-  
    #测试HTML5语言实现的视频播放器
    
    import unittest
    from selenium import webdriver
    import time
    
    class TestDemo(unittest.TestCase):
        def setUp(self):
            self.driver = webdriver.Chrome()
    
        def test_HTML5VideoPlayer(self):
            url = 'http://www.w3school.com.cn/tiy/loadtext.asp?f=html5_video_simple'
            #访问HTML5语言实现的播放器网页
            self.driver.get(url)
            #打印访问网页的页面源代码,供读者学习
            print(self.driver.page_source)
            #获取页面中的video标签元素对象
            videoPlayer = self.driver.find_element_by_tag_name('video')
            #使用JavaScript语句,通过播放器内部的currentSrc属性获取视频文件的网络存储地址
            videSrc = self.driver.execute_script("return arguments[0].currentSrc;",videoPlayer)
            #打印网页中视频存放地址
            print(videSrc)
            self.assertEqual(videSrc,'http://www.w3school.com.cn/i/movie.ogg')
            #使用JavaScript语句,通过播放器内部的duration属性获取视频文件的播放时长
            videoDuration = self.driver.execute_script
                ("return arguments[0].duration;",videoPlayer)
            #打印视频时长
            print(videoDuration)
            self.assertEqual(int(videoDuration),3)
            #使用JavaScript语句,通过调用播放器内部的play()方法来播放影片
            self.driver.execute_script("return arguments[0].play();",videoPlayer)
            time.sleep(2)
            #播放2秒后,使用JavaScript语句,通过调用播放器内部的pause函数来暂停播放影片
            self.driver.execute_script("return arguments[0].pause();",videoPlayer)
            time.sleep(3)
            #将暂停视频播放页面进行截屏,并保存为D盘的videoPlay_pause.jpg文件
            self.driver.save_screenshot('e:\videoPlay_pause.png')
    
        def tearDown(self):
            self.driver.quit()
    
    if __name__ == '__main__':
        unittest.main()

    说明:

           控制视频播放器的原理均需要使用JavaScript语句来调用视频播放器内部的属性和接口来完成我们想要做的操作。

  • 相关阅读:
    06 is和==的区别 encode()编码 decode()解码
    05 dic的增删改查 字典的嵌套 考试题dic.get()的相关使用
    03 编码 int ,bool,str的常用操作 主要讲str
    01 基本数据类型 变量 if语句
    04 列表的增删改查 常用方法 元祖 range
    02 while循环 格式化输出 运算符
    多校2 Harmonious Army hdu6598 网络流
    P3159 [CQOI2012]交换棋子 网络流
    P2172 [国家集训队]部落战争 最大流
    P2402 奶牛隐藏 网络流
  • 原文地址:https://www.cnblogs.com/sleeping-cat/p/8278716.html
Copyright © 2011-2022 走看看