微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Selenium 屏幕截屏

前言

自动化测试的过程中,有时候需要截屏,比如有些地方出现了 bug,需要将当前页面进行截屏。

截屏方法

WebDriver 内置了一些截屏的方法

  • save_screenshot() 截取当前屏幕并保存为指定文件
  • get_screenshot_as_file() 截取当前屏幕保存到完整的路径下

实例1:将截屏保存到当前目录

from selenium import webdriver
from time import sleep

driver = webdriver.Chrome()

driver.get('http://www.baidu.com')
sleep(2)
# 截屏保存到当前目录
driver.save_screenshot('baidu.png')

driver.quit()

实例2:将截屏以当前时间命名并保存

from selenium import webdriver
from time import sleep, strftime, localtime, time

driver = webdriver.Chrome()

driver.get('http://www.baidu.com')
sleep(2)

# 获取当前时间
st = strftime('%Y-%m-%d-%H-%M-%s', localtime(time()))
file_name = st + '.png'
# 以当前时间命名保存截屏文件
driver.save_screenshot(file_name)
driver.quit()

实例3:将截屏保存到指定的文件路径下

from selenium import webdriver
from time import sleep, strftime, localtime, time
import os

driver = webdriver.Chrome()

driver.get('http://www.baidu.com')
sleep(2)

# 获取当前时间
st = strftime('%Y-%m-%d-%H-%M-%s', localtime(time()))
file_name = st + '.png'
# 获取 screenshot 文件夹的绝对路径
path = os.path.abspath('screenshot')
# 保存截图的路径
file_path = path + '/' + file_name
# 将截屏保存到指定的文件路径
driver.get_screenshot_as_file(file_path)
driver.quit()

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐