网站首页 全球最实用的IT互联网站!

人工智能P2P分享Wind搜索发布信息网站地图标签大全

当前位置:诺佳网 > 软件工程 > 其他技术区 > 软件测试 >

selenium之截图

时间:2025-03-27 22:32

人气:

作者:admin

标签:

导读:截图 今天来学习一下selenium的截图,截图有什么作用呢;截图一般情况是遇到了错误,需要截图反馈到研发;或者是先截一张原始图,后续回归对比的时候,看看有没有哪个地方不一样...

截图

今天来学习一下selenium的截图,截图有什么作用呢;截图一般情况是遇到了错误,需要截图反馈到研发;或者是先截一张原始图,后续回归对比的时候,看看有没有哪个地方不一样,变化了的;

selenium目前支持了以下四种截图方式

  • save_screenshot(filename);获取当前屏幕截图并保存为指定文件
  • get_screenhot_as_base64();获取当前屏幕截图base64编码字符串
  • get_screenhot_as_file(filename);获取当前的屏幕截图,使用完整的路径
  • get_screenhot_as_png();获取当前屏幕截图的二进制文件数据

话不多说,让我们实践以下就知道怎么个用法了

save_screenshot(filename)

save_screenshot支持一个filename的传参,查看源码可以看得出来,截图后缀为png

filename支持携带路径,可以是相对路径,也可以是绝对路径;

需要注意的是,如果对应文件夹不存在,则无法保存;具体效果如下

保存成功则返回True、没成功则返回错误False

import time

from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.common.by import By

serve_path = r'D:\Code_Study\driver\chromedriver-win64\chromedriver.exe'
service = Service(serve_path)
browser = webdriver.Chrome(service=service)



browser.get("https://www.baidu.com")
browser.find_element(By.ID, "kw").send_keys("selenium")
browser.find_element(By.ID, "su").click()
time.sleep(5)
# save_screenshot(filename);获取当前屏幕截图并保存为指定文件
# 在当前目录
browser.save_screenshot("selenium.png")
# 需要注意的是,如果对应文件夹不存在,则无法保存;
# 还支持携带路径参数,绝对路径
browser.save_screenshot(r"D:\Code_Study\Python_Selenium\pic\selenium.png")
# 相对路径
browser.save_screenshot(r"..\pic\selenium.png")
browser.quit()

get_screenhot_as_base64()

screenshot_base64 = browser.get_screenshot_as_base64()
print(screenshot_base64)

get_screenhot_as_file(filename)

保存成功则返回True、没成功则返回错误False

browser.get_screenshot_as_file("selenium.png")
# # 需要注意的是,如果对应文件夹不存在,则无法保存;
# # 还支持携带路径参数,绝对路径
browser.get_screenshot_as_file(r"D:\Code_Study\Python_Selenium\pic\selenium.png")
# # 相对路径
browser.get_screenshot_as_file(r"..\pic\selenium.png")

get_screenhot_as_png()

screenshot_data  = browser.get_screenshot_as_png()
print(screenshot_data)
# 可以使用二进制数据写入文件
with open("screenshot.png", "wb") as f:
    f.write(screenshot_data)

经过上面的实践,发现get_screenhot_as_filesave_screenshot这两个作用一样,后面相对于前面比较新,推荐使用后者

温馨提示:以上内容整理于网络,仅供参考,如果对您有帮助,留下您的阅读感言吧!
相关阅读
本类排行
相关标签
本类推荐

CPU | 内存 | 硬盘 | 显卡 | 显示器 | 主板 | 电源 | 键鼠 | 网站地图

Copyright © 2025-2035 诺佳网 版权所有 备案号:赣ICP备2025066733号
本站资料均来源互联网收集整理,作品版权归作者所有,如果侵犯了您的版权,请跟我们联系。

关注微信