首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Python+selenium自动化-Chrome

什么是 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 -*-

__author__ ='Eike'

fromseleniumimportwebdriver

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('测试完成')

对比发现,执行效率提高不少。

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180108G0QGQ000?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券