python 无头模式_Python + Selenium(二十五)无头模式 headless
所谓浏览器的无头模式headless,就是浏览器在运行时处于后台操作的模式,不会看到浏览器打开,也就不会干扰你手头的工作。对于自动化测试和网络爬虫都有很大的价值。
早期我们使用 phantomJS 浏览器来实现这种模式,随着 Chrome 和 Firefox 都加入了无头模式, Selenium 逐渐停止对 phantomJS 的支持。
Chrome 的 headless
Chrome 的无头模式,通过在打开浏览器前加入 --headless 参数配置即可实现。
from selenium import webdriver
from selenium.webdriver.chrome.options import Options # => 引入Chrome的配置
import time
# 配置
ch_options = Options()
ch_options.add_argument("--headless") # => 为Chrome配置无头模式
# 在启动浏览器时加入配置
driver = webdriver.Chrome(chrome_options=ch_options) # => 注意这里的参数
driver.get('http://baidu.com')
driver.find_element_by_id('kw').send_keys('测试')
driver.find_element_by_id('su').click()
time.sleep(2)
# 只有截图才能看到效果咯
driver.save_screenshot('./ch.png')
driver.quit()
Firefox 的 headless
Firefox 浏览器的无头模式配置与 Chrome 差不多,只是写法有差异。
from selenium.webdriver.firefox.options import Options # => 引入Firefox配置
from selenium import webdriver
import time
# 配置浏览器
ff_options = Options()
ff_options.headless = True # => 设置无头模式为 True
driver = webdriver.Firefox(firefox_options=ff_options) # => 注意这里的参数
driver.get('http://baidu.com')
driver.find_element_by_id('kw').send_keys('测试')
driver.find_element_by_id('su').click()
time.sleep(2)
# 截图看效果
driver.save_screenshot('./ff.png')
driver.quit()
感受一下吧!
python 无头模式_Python + Selenium(二十五)无头模式 headless相关推荐
- Python之精心整理的二十五个文本提取及NLP相关的处理案例
一.提取 PDF 内容 # pip install PyPDF2 安装 PyPDF2 import PyPDF2 from PyPDF2 import PdfFileReader# Creating ...
- 【OS学习笔记】二十五 保护模式七:任务和特权级保护对应的汇编源代码
本汇编代码是以下两篇文章讲解的内容的内核代码; [OS学习笔记]二十三 保护模式七:保护模式下任务的隔离与任务的特权级概念 [OS学习笔记]二十四 保护模式七:调用门与依从的代码段----特权级保护 ...
- python爬虫影评_Python爬虫(二十)_动态爬取影评信息
本案例介绍从JavaScript中采集加载的数据.更多内容请参考:Python学习指南 #-*- coding:utf-8 -*- import requests import re import t ...
- 设计模式之外观模式php,php设计模式(十五)外观模式
外观模式又叫门面模式: 现在都是模块化开发了: 开发中很多时候都是在使用各种扩展包: 或者在外观模式中我们叫做子系统: 外观模式的作用就是减少子系统之间的耦合: 降低子系统的使用难度: 我们举个栗子: ...
- Python遥感图像处理应用篇(二十五):Python+GDAL 波段组合
1.使用场景描述 之前使用arcpy python2.7写了一篇进行遥感数据波段组合计算的博文,使用场景是将所有单波段数据放在一个文件夹中(如下图),文件名称前缀一样,后缀波段编号用来区分不同的波段, ...
- java沙盒模式_JavaScript学习笔记(二十五) 沙箱模式
沙箱模式(Sandbox Pattern) 沙箱模式可以避免命名空间的一些缺点(namespacing pattern),比如: 依赖一个唯一全局的变量作为程序的全局符号.在命名空间模式中,没有办法存 ...
- Python的内置函数(二十五)、readlines()
概述 readlines() 方法用于读取所有行(直到结束符 EOF)并返回列表,该列表可以由 Python 的 for... in ... 结构进行处理. 如果碰到结束符 EOF 则返回空字符串. ...
- python动态捕捉屏幕_python学习(十五) 屏幕抓取
15.1 屏幕抓取 15.1.1 Tidy和XHTML解析 Tidy:用来修复不规范且随意的HTML文档的工具. 为什么用XHTML: 和旧版本的HTML之间最主要的区别:HTML可能只用一个开始标签 ...
- [Python从零到壹] 三十五.图像处理基础篇之OpenCV绘制各类几何图形
欢迎大家来到"Python从零到壹",在这里我将分享约200篇Python系列文章,带大家一起去学习和玩耍,看看Python这个有趣的世界.所有文章都将结合案例.代码和作者的经验讲 ...
- [Python从零到壹] 四十五.图像增强及运算篇之图像灰度非线性变换详解
欢迎大家来到"Python从零到壹",在这里我将分享约200篇Python系列文章,带大家一起去学习和玩耍,看看Python这个有趣的世界.所有文章都将结合案例.代码和作者的经验讲 ...
最新文章
- Python 还能实现图片去雾?FFA 去雾算法、暗通道去雾算法用起来!(附代码)...
- html类名的作用,bootstrap类名及作用(部分)
- qt 删除文件夹_Qt 贪吃蛇制作(含源码)
- 【数据挖掘笔记九】分类:高级方法
- linux 脚本 apache进程,Apache环境下进程检查脚本
- form-data php,PHP 模拟form-data上传文件
- 现代谱估计:多窗口谱
- 为什么不敢和别人竞争_看懂这个自我评价发展曲线,你就明白,为什么青春期孩子如此叛逆...
- idea右键项目没有git 【解决方法】
- There is no configured/running web-servers found! Please, run any web-configuration and hit the Refr
- Codeforces 478B 6thweek contest_B
- 【POJ - 3347 】Kadj Squares (计算几何,思维 或 扫描线)
- 间接寻址级别不同_「计算机组成原理」:常见的指令寻址方式
- 微服务架构 SpringCloud(一)组件和概念介绍
- matlab vgg图像风格迁移,迁移网络的应用-图像风格迁移
- Allegro之测量时显示两种单位(mil mm)
- WEB应用之JSP+Servlet
- CSDN如何上传gif图片
- 微信小程序列表图片加载错误处理
- 申请加拿大计算机研究生如何写未来计划,加拿大学习计划书模板 (study plan)
热门文章
- 如何利用扩展欧几里得算法求解不定方程_欧几里德算法、拓展欧几里德、中国剩余定理...
- CSS中div覆盖另一个div
- ecs硬盘数据迁移_阿里云ECS新增数据盘以及迁移数据方法
- 小说中场景的功能_《流浪地球》:从小说到电影
- Linux查找命令find、loacte、whereis、which、type梳理
- android 融云浏览大图,融云 Android sdk kit 头像昵称更新机制
- 联想拯救者y7000加内存条_短测联想拯救者Y7000,到底值不值得买?
- php检查 session是否存在,检查sessionid已知的PHP会话是否处于活动状态
- 64位 linux 32位连接器,32位汇编程序在64位Ubuntu上的汇编和连接
- cgi php脚本运行超时间,php超时 - php-cgi调用外部程序超时,但php在命令行模式下能完整运行外部程序...