selenium的屏幕截屏

WebDriver内置了一些捕获屏幕并保存的方法:
在这里插入图片描述
代码用例如下:

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

import os
class TestCase(object):
    def __init__(self):
        self.driver = webdriver.Chrome()
        self.driver.get('http://www.baidu.com')

    def test1(self): #获取当前时间为文件名称,并保存到当前目录
        self.driver.find_element_by_id('kw').send_keys('selenium')
        self.driver.find_element_by_id('su').click()

        sleep(2)
       
        st = strftime("%Y-%m-%d-%H-%M-%S", localtime(time()))
        file_name = st + '.png'
        self.driver.save_screenshot(file_name)

    def test2(self): #保存在某一个目录中
        st = strftime("%Y-%m-%d-%H-%M-%S", localtime(time()))
        fime_name = st + '.png'

        path = os.path.abspath('scrennshot')
        file_path = path+'/'+fime_name
        self.driver.get_screenshot_as_file(file_path)


if __name__ == '__main__':
    case = TestCase()
    #case.test1()
    case.test2()
Selenium提供了多种方法来进行屏幕截图。其中一种方法是使用`save_screenshot(filename)`,该方法可以直接截取当前屏幕截图,并将其保存为指定的文件。另一种方法是使用`get_screenshot_as_base64()`,该方法可以获取当前屏幕截图的base64编码字符串。还有一种方法是使用`get_screenshot_as_file(filename)`,该方法可以获取当前截图,并使用完整的路径保存。最后一种方法是使用`get_screenshot_as_png()`,该方法可以获取当前截图的二进制文件数据。 下面是一个使用`save_screenshot`方法进行屏幕截图的示例代码: ```python from selenium import webdriver from time import sleep driver = webdriver.Chrome() # 打开浏览器 driver.get("https://www.baidu.com/") # 跳转至测试页面 sleep(1) element = driver.find_element_by_id("kw") # 定位输入框 element.send_keys("自动化测试") # 输入内容 sleep(1) driver.save_screenshot("baidu.png") # 截屏 sleep(2) driver.quit() # 关闭浏览器 ``` 使用Selenium截图可以记录页面状态,以便在需要时进行比较和分析。屏幕截图方法在Selenium的测试中非常有用。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [Selenium屏幕截图教程](https://blog.csdn.net/m0_61655732/article/details/121001776)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [Selenium基础篇之屏幕截图方法](https://blog.csdn.net/weixin_38093452/article/details/129877392)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

永远不要矫情

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值