在使用selenium执行测试用例时,每条用例执行过程中都会打开一个浏览器,如果用例数量过多时,每次运行均需要调用一次浏览器,增加了服务器压力,而无头模式就可以解决这种问题,他可以让运行速度更快,占用的资源也更少,让浏览器偷偷的在后台工作。

无头模式,是webdriver浏览器驱动的一个功能,可以支持不打开浏览器,直接跟网页进行交互,能够模拟真实得到浏览器进行操作。

操作环境

Windows 10
Python 3.9.1
Selenium 4.0.0
Chrome 浏览器

使用方法

from selenium.webdriver.chrome.options import Options
from selenium import webdriverchrome_options = Options()
chrome_options.add_argument('--headless')
driver = webdriver.Chrome(options=chrome_options)# 通过driver.get()来打开对应链接
driver.get(url="https://www.baidu.com/")

示例

import pytest
from selenium.webdriver.chrome.options import Options
from selenium import webdriverchrome_options = Options()
chrome_options.add_argument('--headless')class TestDemo:# driver = webdriver.Chrome(options=chrome_options)@classmethoddef setup(cls):cls.driver = webdriver.Chrome(options=chrome_options)cls.driver.implicitly_wait(20)# cls.driver.maximize_window()cls.driver.get(url="https://www.baidu.com/")@classmethoddef teardown(cls):cls.driver.quit()def test_1_a(self):self.driver.find_element('id', 'kw').send_keys("QQ")self.driver.find_element('id', 'su').click()time.sleep(3)assert self.driver.title == 'QQ_百度搜索'def test_2_a(self):assert self.driver.current_url == 'https://www.baidu.com/'if __name__ == '__main__':pytest.main(['-s', 'case.py'])

Selenium:设置无头浏览器相关推荐

  1. java中selenium设置chrome浏览器为开发者模式与IP代理

    java中selenium设置chrome浏览器为开发者模式与IP代理 前言 代码 前言 之前为公司写了个爬虫项目,有时候为了绕过网站的反爬机制需要用到ip代理以及设置浏览器为开发者模式,看了一些se ...

  2. python爬虫之selenium,谷歌无头浏览器

    python爬虫之selenium和PhantomJS 主要的内容 lenium hantomjs 无头浏览器 的懒加载 一 什么是selenium? 介绍 它是python中的一个第三方库,对外提供 ...

  3. 基于Python, Selenium, Phantomjs无头浏览器访问页面

    引言: 在自动化测试以及爬虫领域,无头浏览器的应用场景非常广泛,本文将梳理其中的若干概念和思路,并基于代码示例其中的若干使用技巧. 1. 无头浏览器 通常大家在在打开网页的工具就是浏览器,通过界面上输 ...

  4. [转载] 基于Python, Selenium, Phantomjs无头浏览器访问页面

    参考链接: Selenium Python技巧 引言: 在自动化测试以及爬虫领域,无头浏览器的应用场景非常广泛,本文将梳理其中的若干概念和思路,并基于代码示例其中的若干使用技巧. 1. 无头浏览器 通 ...

  5. selenium防爬无头浏览器和模拟手机浏览器

    在edge浏览器中使用webdriver时控制台中window.navigator.webdriver 元素会显示True,正常情况下来说应该是关掉的,所以我们用js来屏蔽掉这个元素 from sel ...

  6. python 无头浏览器多线程_基于Python, Selenium, Phantomjs无头浏览器访问页面

    引言: 在自动化测试以及爬虫领域,无头浏览器的应用场景非常广泛,本文将梳理其中的若干概念和思路,并基于代码示例其中的若干使用技巧. 1. 无头浏览器 通常大家在在打开网页的工具就是浏览器,通过界面上输 ...

  7. selenium 配置无头浏览器

    from selenium.webdriver import Chrome from selenium.webdriver.support.select import Select #无头 from ...

  8. selenium无头浏览器_无头Selenium浏览器

    selenium无头浏览器 重要要点 无头浏览器无需用户界面即可运行. 不再支持PhantomJS. JBrowser驱动程序是Java 8的低开销选项. 如果需要Java 11支持,所有当前的Jav ...

  9. python 无头浏览器xhr 文件_Python对Selenium调用浏览器进行封装包括启用无头浏览器,及对应的浏览器配置文件...

    """ 获取浏览器 打开本地浏览器 打开远程浏览器 关闭浏览器 打开网址 最大化 最小化 标题 url 刷新 python对selenium封装浏览器调用 ------b ...

最新文章

  1. SpringBoot+WangEditor上传图片
  2. 基于 RT-Thread赛车控制算法开发
  3. 创业第一天,有三AI扔出了深度学习的150多篇文章和10多个专栏
  4. VTK:PolyData之ConvexHull
  5. meta http-equiv=X-UA-Compatible content=IE=edge / 的说明
  6. 【翻译】ANDROID KTX – 使用Kotlin进行Android开发
  7. 我愿意参加Qcon 2010大会,你愿意吗?
  8. python时间函数详解_Python 日期的转换及计算的具体使用详解
  9. 内容为王时代“内卷”急,安全风控一旦疏漏很要命!
  10. [原] MyBatis 整理
  11. sqlmap安装(python2或python3都行)
  12. ask调制流程图_FSK、MSK、ASK调制方式自动识别模块分析设计
  13. oracle scan启动,scan listener 重启
  14. 回调函数,监听函数 关系 个人学习理解
  15. 高德地图点击marker图标改变效果实现过程
  16. java一系列图片加载_RxJava系列文章(一) - 网络图片加载水印一般写法
  17. 平衡树学习笔记之 fhq Treap
  18. python读取和写入 gzip和bz2格式的压缩文件中的数据
  19. python江红书后第六章实验答案_C#NET程序设计教程实验指导(清华大学江红,余青松)实验源码第六章...
  20. 2018便利蜂春招一面

热门文章

  1. 动态路由下刷新 页面空白
  2. 从头学前端-CSS基础01
  3. 前端基础 html(三)
  4. 认识中药(1) -- 鱼腥草
  5. 基于VC++的局域网内主机监控系统设计与实现
  6. ABAP学习笔记之——第三章:OPEN SQL和NATIVE SQL
  7. xp3 系统下安装sql2005 失败(msxml6失败)
  8. 用Python+Selenium来测试登录自动登录163邮箱
  9. Linux的qt安装包下载
  10. 106个项目上榜!2018人工智能与实体经济深度融合创新项目名单公布