Python爬虫之Selenium实现窗口截图


Posted in Python onDecember 04, 2020

前言:由程序去执行的操作不允许有任何误差,有些时候在测试的时候未出现问题,但是放到服务器上就会报错,而且打印的错误信息并不十分明确。这时,我在想如果在脚本执行出错的时候能对当前窗口截图保存,那么通过图片就可以非常直观地看出出错的原因。WebDriver提供了截图函数get_screenshot_as_file()来截取当前窗口。

本章中用到的关键方法如下:

get_screenshot_as_file():截图

from selenium import webdriver

driver = webdriver.Chrome()
driver.get('https://www.baidu.com/')

# 截图,图片后缀最好为.png,如果是其他的执行的时候会有警告,但不会报错
driver.get_screenshot_as_file("D:\\baidu_index.png")

driver.quit()

实例:

#窗口截图操作
#coding utf-8

from selenium import webdriver
from time import sleep

driver = webdriver.Firefox()

url = "http://www.baidu.com"

driver.get(url)

driver.find_element_by_id('kw').send_keys('selenium python')
driver.find_element_by_id('su').click()

sleep(2)

driver.get_screenshot_as_file("D:\\baidu_error.jpg")

driver.quit()

运行结果:

有个warning,什么意思呢,就是说截图最好是使用 .png格式的图片,而我的代码中使用的是.jpg格式,但是,不影响最终结果

 file type. It should end with a `.png` extension
  "type. It should end with a `.png` extension", UserWarning)

网页截图: - 不出意外,渣度第一时间给你推送广告!!呵呵呵!-

Python爬虫之Selenium实现窗口截图

Selenium文集传送门:

标题 简介
Python爬虫 - Selenium(1)安装和简单使用 详细介绍Selenium的依赖环境在Windows和Centos7上的安装及简单使用
Python爬虫 - Selenium(2)元素定位和WebDriver常用方法 详细介绍定位元素的8种方式并配合点击和输入、提交、获取断言信息等方法的使用
Python爬虫 - Selenium(3)控制浏览器的常用方法 详细介绍自定义浏览器窗口大小或全屏、控制浏览器后退、前进、刷新浏览器等方法的使用
Python爬虫 - Selenium(4)配置启动项参数 详细介绍Selenium启动项参数的配置,其中包括无界面模式、浏览器窗口大小设置、浏览器User-Agent (请求头)等等
Python爬虫 - Selenium(5)鼠标事件 详细介绍鼠标右击、双击、拖动、鼠标悬停等方法的使用
Python爬虫 - Selenium(6)键盘事件 详细介绍键盘的操作,几乎包含所有常用按键以及组合键
Python爬虫 - Selenium(7)多窗口切换 详细介绍Selenium是如何实现在不同的窗口之间自由切换
Python爬虫 - Selenium(8)frame/iframe表单嵌套页面 详细介绍如何从当前定位的主体切换为frame/iframe表单的内嵌页面中
Python爬虫 - Selenium(9)警告框(弹窗)处理 详细介绍如何定位并处理多类警告弹窗
Python爬虫 - Selenium(10)下拉框处理 详细介绍如何灵活的定位并处理下拉框
Python爬虫 - Selenium(11)文件上传 详细介绍如何优雅的通过send_keys()指定文件进行上传
Python爬虫 - Selenium(12)获取登录Cookies,并添加Cookies自动登录 详细介绍如何获取Cookies和使用Cookies进行自动登录
Python爬虫 - Selenium(13)设置元素等待 详细介绍如何优雅的设置元素等待时间,防止程序运行过快而导致元素定位失败
Python爬虫 - Selenium(14)窗口截图 详细介绍如何使用窗口截图
Python爬虫 - Selenium(15)关闭浏览器 详细介绍两种关闭窗口的区别

到此这篇关于Python爬虫之Selenium实现窗口截图的文章就介绍到这了,更多相关Selenium 窗口截图内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python模拟enum枚举类型的方法小结
Apr 30 Python
Python 正则表达式的高级用法
Dec 04 Python
详解python OpenCV学习笔记之直方图均衡化
Feb 08 Python
基于循环神经网络(RNN)的古诗生成器
Mar 26 Python
Python3之读取连接过的网络并定位的方法
Apr 22 Python
python实现多人聊天室
Mar 31 Python
解决pycharm运行程序出现卡住scanning files to index索引的问题
Jun 27 Python
python保存log日志,实现用log日志画图
Dec 24 Python
django ObjectDoesNotExist 和 DoesNotExist的用法
Jul 09 Python
Python 列表推导式需要注意的地方
Oct 23 Python
Python 微信公众号文章爬取的示例代码
Nov 30 Python
python单例模式的应用场景实例讲解
Feb 24 Python
python 爬取英雄联盟皮肤并下载的示例
Dec 04 #Python
Python爬虫之Selenium设置元素等待的方法
Dec 04 #Python
Selenium获取登录Cookies并添加Cookies自动登录的方法
Dec 04 #Python
Python爬虫中Selenium实现文件上传
Dec 04 #Python
利用python进行文件操作
Dec 04 #Python
Python爬虫之Selenium下拉框处理的实现
Dec 04 #Python
Python爬虫之Selenium警告框(弹窗)处理
Dec 04 #Python
You might like
php反弹shell实现代码
2009/04/22 PHP
php生成二维码的几种方式整理及使用实例
2013/06/03 PHP
php自定义中文字符串截取函数substr_for_gb2312及substr_for_utf8示例
2016/05/28 PHP
PHP接入微信H5支付的方法示例
2019/10/28 PHP
extjs DataReader、JsonReader、XmlReader的构造方法
2009/11/07 Javascript
浅谈JavaScript之事件绑定
2013/07/08 Javascript
jQuery源码解读之removeAttr()方法分析
2015/02/20 Javascript
Javascript数据结构与算法之列表详解
2015/03/12 Javascript
jQuery判断元素上是否绑定了指定事件的方法
2015/03/17 Javascript
网页从弹窗页面单选框传值至父页面代码分享
2015/09/29 Javascript
JavaScript encodeURI 和encodeURIComponent
2015/12/04 Javascript
详解springmvc 接收json对象的两种方式
2016/12/06 Javascript
vue2.0 兄弟组件(平级)通讯的实现代码
2018/01/15 Javascript
vue页面离开后执行函数的实例
2018/03/13 Javascript
小程序实现录音上传功能
2019/11/22 Javascript
Vue-cli3多页面配置详解
2020/03/22 Javascript
深入理解NumPy简明教程---数组3(组合)
2016/12/17 Python
python GUI图形化编程wxpython的使用
2019/07/19 Python
python实现猜拳小游戏
2020/04/05 Python
Java ExcutorService优雅关闭方式解析
2020/05/30 Python
浅谈Keras中shuffle和validation_split的顺序
2020/06/19 Python
python 基于wx实现音乐播放
2020/11/24 Python
Python 随机按键模拟2小时
2020/12/30 Python
css3 clip实现圆环进度条的示例代码
2018/02/07 HTML / CSS
台湾时尚彩瞳专门店:imeime
2019/08/16 全球购物
skyn ICELAND官网:冰岛成分天然护肤品
2020/08/24 全球购物
教师年终个人自我评价
2013/10/04 职场文书
商务英语专业应届毕业生求职信
2013/10/28 职场文书
主题婚礼策划方案
2014/02/10 职场文书
红色故事演讲稿
2014/05/22 职场文书
小学生读书活动总结
2014/06/30 职场文书
销售竞赛活动方案
2014/08/23 职场文书
处级干部反四风个人对照检查材料思想汇报
2014/09/27 职场文书
Nginx配置SSL证书出错解决方案
2021/03/31 Servers
idea下配置tomcat避坑详解
2022/04/12 Servers
Python尝试实现蒙特卡罗模拟期权定价
2022/04/21 Python