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')

最新文章

  1. excel常用技巧
  2. Eclipse使用技巧
  3. Azure HDInsight 和 Spark 大数据实战(一)
  4. 坑爹的 SONY AS100V GPS
  5. 使用Expression Tree构建动态LINQ查询
  6. QT学习第1天
  7. Token验证失败
  8. Oracle 12c
  9. Swift之map函数的强大之处
  10. [转载] C++ STL string的Copy-On-Write技术
  11. MyEclipse 中的各种有的没的快捷方式
  12. GridView控件 Reapter控件 DataList控件 的区别和用法
  13. 比较器comparable与comparator的使用
  14. python 在调用时计算默认值
  15. sql常用的日期函数与应用
  16. 老李分享:jvm结构简介 1
  17. Express异步进化史
  18. Android LayoutInflator 解析
  19. 【伯乐在线】FACEBOOK产品设计总监:设计APP时的14个必考题
  20. FROM USE CASES TO TEST CASES

热门文章

  1. Go变量与基础数据类型
  2. HCNP Routing&Switching之BGP基础
  3. 地心地固坐标系(ECEF)与站心坐标系(ENU)的转换
  4. NOI2016区间bzoj4653(线段树,尺取法,区间离散化)
  5. css3新增文本属性
  6. 互联网公司作息表「GitHub 热点速览 v.21.42」
  7. 消息队列那么多,为什么建议深入了解下RabbitMQ?
  8. sql常用的统计公式
  9. 剑指offer:JZ12 矩阵中的路径
  10. 基于Apache Zookeeper手写实现动态配置中心(纯代码实践)