• Python


    什么是 Headless Chrome
    Headless Chrome 是 Chrome 浏览器的无界面形态,可以在不打开浏览器的前提下,使用所有 Chrome 支持的特性运行你的程序。相比于现代浏览器,Headless Chrome 更加方便测试 web 应用,获得网站的截图,做爬虫抓取信息等。相比于较早的 PhantomJS,SlimerJS 等,Headless Chrome 则更加贴近浏览器环境。
    Headless Chrome作用
    为了提高selenium脚本的执行速度,我们可能会考虑使用PhantomJS这类的Headless 浏览器,但这些工具对JavaScript支持不好或者对web的支持不好,占用资源多,跟真实浏览器存在一定的差异等等问题。Chrome 浏览器提供的Headless Chrome,简单说我们也可以在不打开chrome GUI的情况在Chrome下执行我们的Selenium脚本,可提升脚本的执行效率。
    Headless Chrome 对Chrome版本要求
    官方文档中介绍,mac和linux环境要求chrome版本是59+,而windows版本的chrome要求是60+
    如果想进一步了解headless,请移步官网:https://developers.google.cn/web/updates/2017/04/headless-chrome
    示例:
    环境:
    win10
    chrome=63
    chromedriver =23
    示例代码:
    # -*- coding:utf-8 -*-
    from selenium import webdriver

    option = webdriver.ChromeOptions()
    option.add_argument('headless')
    driver = webdriver.Chrome(chrome_options=option)
    # driver = webdriver.Chrome()
    # driver = webdriver.PhantomJS()
    driver.get('https://www.baidu.com/')
    print('打开浏览器')
    print(driver.title)
    driver.find_element_by_id('kw').send_keys('测试')
    print('关闭')
    driver.quit()
    print('测试完成')
    对比发现,执行速度大大提高了。
    《接口测试自动化实战》 https://yuedu.baidu.com/ebook/aaf72f1b42323968011ca300a6c30c225901f07d 《python+appium自动化项目实战》 https://yuedu.baidu.com/ebook/765b38a5690203d8ce2f0066f5335a8102d266b9[/b]6f5335a8102d266b9
  • 相关阅读:
    Petya and Countryside
    大数A+B
    python-requests正则
    python-UnicodeDecodeError: 'gbk' codec can't decode byte 0xa8 in position 157: illegal multibyte sequence
    python-mysql数据迁移
    python-flask框架路由
    python-flask框架基础
    MYSQL-内外自连接-判断函数
    MYSQL-分组查询-where和having的区别
    mysql增删
  • 原文地址:https://www.cnblogs.com/tester-study/p/8416213.html
Copyright © 2020-2023  润新知