selenium工具的几种截屏方法介绍(9)

在使用selenium做自动化的时候,可以对于某些场景截图保存当时的执行情况,方便后续定位问题或者作为一些证据保留现场。

获取元素后将元素截屏

我们获取元素后,使用函数screenshot将元素截屏,参数filename传入完整的png文件名路径或者文件名(放在当前路径)。

测试代码:打开头条网站,定位到左上角的'下载头条app'然后截屏保存。

复制代码
from selenium import webdriver
from selenium.webdriver.common.by import By
driver = webdriver.Safari()
#打开传入的URL网页地址
driver.get("https://www.toutiao.com/")
sleep(6)
element = driver.find_element(By.XPATH,'//*[@id="root"]/div/div[3]/div[1]/div')
element.screenshot('1.png')
element.screenshot('/Users/aaa/Donwloads/1.png')

执行后打开截图如下:

将整个页面截屏

在webdriver模块中有几种截屏的方法,主要介绍如下:

1)save_screenshot(filename)

filename传入以png结尾的文件路径。

2)get_screenshot_as_file (filename)

filename传入以png结尾的文件路径。

3)还有两个方法保存的是字节码或者字符串:

使用get_screensho_as_png函数保存截屏为字节码

使用get_screensho_as_base64函数保存截屏为base64编码后的字符串

复制代码
driver.get_screenshot_as_png()
driver.get_screenshot_as_base64()

示例:打开头条后,截图

复制代码
from selenium import webdriver
from selenium.webdriver.common.by import By
driver = webdriver.Safari()
#打开传入的URL网页地址
driver.get("https://www.toutiao.com/")
driver.maximize_window()

使用save_screenshot函数截图保存为png图片

复制代码
driver.save_screenshot('toutiao1.png')

使用save_screensho_as_filet函数截图保存为png图片

复制代码
driver.get_screenshot_as_file('D:/picture/toutiao2.png')

程序执行后在对应目录下可以看到头条网站整个页面的截图。

共勉: 东汉·班固《汉书·枚乘传》:"泰山之管穿石,单极之绠断干。水非石之钻,索非木之锯,渐靡使之然也。"

-----指水滴不断地滴,可以滴穿石头;

-----比喻坚持不懈,集细微的力量也能成就难能的功劳。

----感谢读者的阅读和学习,谢谢大家。

相关推荐
小猴子爱上树10 分钟前
Temu批量视频翻译Python实现方案
开发语言·python·音视频
X1A0RAN24 分钟前
Python 并发请求性能优化实战
python·性能优化·并发编程
陈同学xxx30 分钟前
Hermes Agent 接入飞书,在手机上随时聊天
linux·python·飞书
卷无止境35 分钟前
Python 中基于 Qt 的 GUI 库授权方式全解析
后端·python
卷无止境1 小时前
Guardrails.ai:为大语言模型加一道"安全阀"
后端·python
汤姆小白5 小时前
01-环境搭建与项目导览
人工智能·python·机器学习·numpy
糯米导航10 小时前
AI 视觉回归实战:截图对比不是“找不同”,如何让智能差异分析真正服务 UI 质量
人工智能·ui·回归
向日的葵00611 小时前
langchain的Tools教程(三)
python·langchain·tools
xy345312 小时前
wireshark 如何捕获信息
网络·测试工具·渗透测试·wireshark
其实防守也摸鱼12 小时前
运维--学习阶段问题解答(1)(自测)
linux·运维·服务器·数据库·学习·自动化·命令模式