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')

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

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

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

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

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

相关推荐
MXsoft6181 小时前
## 自动化巡检:从手工两小时到系统五分钟的落地实践
运维·自动化
ZLG_zhiyuan1 小时前
直击华南工博会|ZLG致远电子:EtherCAT与自动化总线应用方案动态实景呈现
运维·自动化
珺毅同学1 小时前
YOLO生成预测json标签迁移问题
python·yolo·json
骑士雄师2 小时前
18.4 长期记忆可修改版
python
~小先生~2 小时前
Python从入门到放弃(一)
开发语言·python
天佑木枫2 小时前
第2天:变量与数据类型 —— 让程序记住信息
python
Dust-Chasing3 小时前
Claude Code源码剖析 - Claude Code 上下文压缩机制
人工智能·python·ai
三雷科技3 小时前
Claude Code 命令行完全指南:从高效交互到自动化工作流
运维·自动化·交互
Cloud_Shy6184 小时前
解读《Effective Python 3rd Edition》:从练气到老魔(第五章 Item 33 - 35)
开发语言·人工智能·笔记·python·学习方法
狼哥16865 小时前
蛋糕美食元服务_我的实现指南
ui·harmonyos