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()
上一篇:关于快速复制粘贴文献元数据的自动化方法


下一篇:关于锁的对象