1.什么是Phantomjs (已经停止更新)
  是一个无界面的浏览器
  支持页面元素查找,js的执行等
  由于不进行css和gui渲染,运行效率要比真实的浏览器要快很多
2.如何使用Phantomjs?
  获取PhantomJS.exe文件路径path
  browser = webdriver.PhantomJS(path)
  browser.get(url)
  扩展:保存屏幕快照:browser.save_screenshot('baidu.png')
from selenium import webdriver

#程序启动位置
path = 'phantomjs.exe' #创建对象
browser = webdriver.PhantomJS(path) url = 'https://www.baidu.com'
browser.get(url) browser.save_screenshot('baidu.png') import time
time.sleep(2) input = browser.find_element_by_id('kw')
input.send_keys('昆凌') time.sleep(3)
# 拍摄快照
browser.save_screenshot('kunling.png')

Chrome handless

Chrome-headless 模式, Google 针对 Chrome 浏览器 59版 新增加的一种模式,可以让你不打开UI界面的情况下
使用 Chrome 浏览器,所以运行效果与 Chrome 保持完美一致。
1.系统要求:
  Chrome
  Unix\Linux 系统需要 chrome >= 59
  Windows 系统需要 chrome >= 60
  Python3.6
  Selenium==3.4.*
  ChromeDriver==2.31
2.配置:
  from selenium import webdriver
  from selenium.webdriver.chrome.options import Options
  chrome_options = Options()
  chrome_options.add_argument('‐‐headless')
  chrome_options.add_argument('‐‐disable‐gpu')
  path = r'C:\Program Files (x86)\Google\Chrome\Application\chrome.exe'
  chrome_options.binary_location = path
  browser = webdriver.Chrome(chrome_options=chrome_options)
  browser.get('http://www.baidu.com/')
3.配置封装:
  from selenium import webdriver
  #这个是浏览器自带的 不需要我们再做额外的操作
  from selenium.webdriver.chrome.options import Options
 
  def share_browser():
  #初始化
  chrome_options = Options()
  chrome_options.add_argument('‐‐headless')
  chrome_options.add_argument('‐‐disable‐gpu')
  #浏览器的安装路径 打开文件位置
  #这个路径是你谷歌浏览器的路径
  path = r'C:\Program Files (x86)\Google\Chrome\Application\chrome.exe'
  chrome_options.binary_location = path
  browser = webdriver.Chrome(chrome_options=chrome_options)
  return browser
 
 封装调用:
  from handless import share_browser
  browser = share_browser()
  browser.get('http://www.baidu.com/')
  browser.save_screenshot('handless1.png')
# from selenium import webdriver
# from selenium.webdriver.chrome.options import Options
#
# chrome_options = Options()
# chrome_options.add_argument('--headless')
# chrome_options.add_argument('--disable-gpu')
#
# # path是你自己的chrome浏览器的文件路径
# path = r'C:\Program Files (x86)\Google\Chrome\Application\chrome.exe'
# chrome_options.binary_location = path
#
# browser = webdriver.Chrome(chrome_options=chrome_options)
#
#
# url = 'https://www.baidu.com'
#
# browser.get(url)
#
# browser.save_screenshot('baidu.png') # 封装的handless from selenium import webdriver
from selenium.webdriver.chrome.options import Options def share_browser():
chrome_options = Options()
chrome_options.add_argument('--headless')
chrome_options.add_argument('--disable-gpu') # path是你自己的chrome浏览器的文件路径
path = r'D:\Chrome\Application\chrome.exe'
chrome_options.binary_location = path
  # 创建对象
browser = webdriver.Chrome(chrome_options=chrome_options)
return browser

browser = share_browser()
#访问地址
url = 'https://www.baidu.com'
#发起访问
browser.get(url)
# 拍摄快照
browser.save_screenshot('baidu.png')

Chrome handless无界面浏览器的脚本操作的更多相关文章

  1. ubuntu中如何安装selenium+chrome(headless)无界面浏览器?

    selenium是一个Web的自动化测试工具,它可以根据我们的指令,让浏览器自动加载页面,获取需要的数据,甚至页面截屏,或者判断网站上某些动作是否发生.但是它自身不带浏览器,不支持浏览器的功能,因此它 ...

  2. linux+java+webdriver chrome handless无界面启动

    网上现有的解决方案要么是windows下的,要么是python的,搞了一天终于解决了,记录如下. 1 下载chrome linux版和对应版本的webdriver,我这里使用的是chrome66和ch ...

  3. python之Phantomjs无界面浏览器引擎自动化测试

    文字搬运工,本文主要介绍PhantomJS功能,其中有屏幕快照功能,为后面更新[python接口自动化脚本更新版本],其中新版本中新增自动发送邮件功能正文带图片,使用PhantomJS截取图片后发送邮 ...

  4. 第三百五十二节,Python分布式爬虫打造搜索引擎Scrapy精讲—chrome谷歌浏览器无界面运行、scrapy-splash、splinter

    第三百五十二节,Python分布式爬虫打造搜索引擎Scrapy精讲—chrome谷歌浏览器无界面运行.scrapy-splash. splinter 1.chrome谷歌浏览器无界面运行 chrome ...

  5. 三十一 Python分布式爬虫打造搜索引擎Scrapy精讲—chrome谷歌浏览器无界面运行、scrapy-splash、splinter

    1.chrome谷歌浏览器无界面运行 chrome谷歌浏览器无界面运行,主要运行在Linux系统,windows系统下不支持 chrome谷歌浏览器无界面运行需要一个模块,pyvirtualdispl ...

  6. selenium phantomjs java无界面浏览器环境搭建

    java selenium搭建无界面浏览器 1.http://phantomjs.org/ 下载windows版phantomjs 2.解压后bin目录下会有exe文件 3.测试代码: package ...

  7. Chrome开启无界面浏览模式Python+Windows环境

    环境:Python 3.5.x + Selenium 3.4.3 + Chromedriver 2.30 + Chrome 60 beta版 + WIN7/WIN10 chrome_options = ...

  8. selenium chrome headless无界面引擎

    注意:PhantomJS已被舍弃 chrome headless 在打开浏览器之前添加参数 import time import sys from selenium import webdriver ...

  9. PhantomJS快速入门-无界面浏览器

    https://blog.csdn.net/libsyc/article/details/78199850 PhantomJS快速入门 本文简要介绍了PhantomJS的相关基础知识点,主要包括Pha ...

随机推荐

  1. Redis之品鉴之旅(五)

    Redis事务 原子性:就是最小的单位 一致性:好多命令,要么全部执行成功,要么全部执行失败 隔离性:一个会话和另一个会话之间是互相隔离的 持久性:执行了就执行了,数据保存在硬盘上 典型例子:银行转账 ...

  2. Windows下的程序及热键监视神器——Spy++

    Windows下的程序及热键监视神器--Spy++ 背景 在使用Windows的时候,偶尔会发现某些应用程序的热键不生效了:又或是桌面弹出了弹框却并不知道这个弹框来自何处.例如,本人最近使用Vim的时 ...

  3. RabbitMQ的消息可靠性(五)

    一.可靠性问题分析 消息的可靠性投递是使用消息中间件不可避免的问题,不管是使用哪种MQ都存在这种问题,接下来要说的就是在RabbitMQ中如何解决可靠性问题:在前面 在前面说过消息的传递过程中有三个对 ...

  4. 七牛云的 python sdk 是如何 批量删除资源的

    今天做项目的时候用到七牛云,关于对资源的操作是在后端做的,用的SDK,但是,在网上没找到详细的解析,官方文档也没有太详细的解说,所以无奈只好看下源码 这里做一下简单的记录 from qiniu imp ...

  5. 3DGIS开发使用的开源项目

    gdal proj4 vcglib assimp libjpg libpng osg libtess2 cesiumjs glm

  6. Verilog的数据流、行为、结构化与RTL级描述

    Verilog语言可以有多种方式来描述硬件,同时,使用这些描述方式,又可以在多个抽象层次上设计硬件,这是Verilog语言的重要特征. 在Verilog语言中,有以下3种最基本的描述方式: 数据流描述 ...

  7. 【c++ Prime 学习笔记】第12章 动态内存

    对象的生存期: 全局对象:程序启动时创建,程序结束时销毁 局部static对象:第一次使用前创建,程序结束时销毁 局部自动对象:定义时创建,离开定义所在程序块时销毁 动态对象:生存期由程序控制,在显式 ...

  8. Java:Object对象小记

    Java:Object对象小记 对 Java 中的 Object 对象,做一个微不足道的小小小小记 Object 的常用方法有哪些 clone() 方法:用于创建并返回当前对象的一份拷贝: 在Java ...

  9. 渗透测试神器——Burp的使用

    公众号:白帽子左一 版本说明:Burp Suite2.1 下载地址: 链接:https://pan.baidu.com/s/1JPV8rRjzxCL-4ubj2HVsug 提取码:zkaq 使用环境: ...

  10. copy-list-with-random-pointer leetcode C++

    A linked list is given such that each node contains an additional random pointer which could point t ...