zoukankan      html  css  js  c++  java
  • selenium(六)Headless Chrome/Firefox--PhantomJS停止支持后,使用无界面模式。

    简介:

    以前都用PhantomJS来进行无界面模式的自动化测试,或者爬取某些动态页面。

    但是最近selenium更新以后,'Selenium support for PhantomJS has been deprecated, please use headless '提示不支持PhantomJs,请使用headless模式。

    好吧,我们还是继续使用firefox chrome的headless模式吧。

    一:版本确认

    1.windows下

    selenium  3.9.0

    我使用这个版本的selenium,已经提示停止支持了。你能查到这个文章,证明你的版本也不会太低。

    firefox 58.0.2 (64 位)

    这个是长期支持版,没用最新版,有些功能貌似不稳定,还经常更新。

    chrome 版本 64.0.3282.119(正式版本) (64 位)

    这个就随便跟随应用管家升级的,毕竟连不上google的升级服务器。

    python 3.6.3  amd64

    确实是这个版本。

    2.linux

    还没测试。过几天部署一个linux项目,再给大家分享版本。

    二:firefox headless模式

    from selenium import webdriver
    options = webdriver.FirefoxOptions()
    options.set_headless()
    # options.add_argument('-headless')
    options.add_argument('--disable-gpu')
    driver=webdriver.Firefox(firefox_options=options)
    driver.get('http://httpbin.org/user-agent')
    driver.get_screenshot_as_file('test.png')
    driver.close()

    实例化FirefoxOptions

    用set_headless

    或add_headless

    实例化firefox浏览器的时候,增加参数firefox_options=options

    这样就可以了。

    '--disable-gpu'这句是禁用GPU加速。

    三:chrome headless模式

    from selenium import webdriver
    options=webdriver.ChromeOptions()
    options.set_headless()
    # options.add_argument('--headless')
    options.add_argument('--disable-gpu')
    driver=webdriver.Chrome(options=options)
    driver.get('http://httpbin.org/user-agent')
    driver.get_screenshot_as_file('test.png')
    driver.close()

    和上面firefox一样。

  • 相关阅读:
    推荐系统(10)—— 进化算法、强化学习
    Throttle Debounce 总结
    文件点击下载
    Mongodb安装及启动正确姿势
    事务的ACID是指什么?
    sqlserver 获取时间字段 每月最后一天 分组(分区)最后一条的记录
    echarts map js或json 地图数据下载
    sqlserver 字段 逗号分隔分组 多行数据
    windows10 中文输入法 增加美式键盘 导致 系统部分语言变成英文
    excel 合并相同内容的单元格 vba
  • 原文地址:https://www.cnblogs.com/jackadam/p/8447669.html
Copyright © 2011-2022 走看看