selenium3使用谷歌无头浏览器截图

Posted beimingyouyuqingcangchuli

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了selenium3使用谷歌无头浏览器截图相关的知识,希望对你有一定的参考价值。

无头浏览器即为Headless Browser,是没有图形用户界面的web浏览器,通常是通过编程或命令行界面来控制。
在正常使用selenium的时候,你必须担心CPU和/或内存的使用。这两种方式都与必须从被请求的URL中显示显示的图形的浏览器相关联。
当使用一个无头的浏览器时,我们不用担心这个。因此,我们可以预期我们编写的脚本的内存消耗会降低,执行速度也会更快。当有的人说,那我没法看到浏览器响应的过程,我不能在这边盯着浏览器自己执行我的用例。。。喔犒!写自动化本来就是为了效率的,做截图就可以了嘛,盯着?你还不如下手点呢。。。咳咳,书接上文

下载安装selenium,谷歌浏览器 自行下载
谷歌浏览器与 驱动的对应关系如下图
技术图片

 

 

ChromeDriver仓库地址:
http://chromedriver.storage.googleapis.com/index.html

谷歌浏览器查看版本方式:

技术图片

 

 

下载好驱动后放置在指定文件夹内备用。

编写脚本

import time
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:Chromedriverchromedriver.exe‘

#创建浏览器对象
browser = webdriver.Chrome(executable_path=path,chrome_options=chrome_options)
#请求地址
url =‘http://www.baidu.com/‘
#发出请求
browser.get(url)
#休眠三秒
time.sleep(3)
#截图并保存在本地C盘TEST文件夹内
browser.save_screenshot("C:TESTaid2.png")
#截图保存在项目下
browser.save_screenshot(‘phaid.png‘)

#其他截图方法
#browser.get_screenshot_as_base64()
#browser.get_screenshot_as_file()
#browser.get_screenshot_as_png()

#退出
browser.quit()

  执行后生成图片。

技术图片

 

 

selenium4圣诞节已经发布,然后新功能API支持的更广泛,selenium的文档,官方自selenium2发布以来就从来没有更新过,哪怕是selenium3发布之后,selenium的官方也是不带动的,这次selenium的官方终于把selenium4的官方文档更新了。。。。。额,真香。

以上是关于selenium3使用谷歌无头浏览器截图的主要内容,如果未能解决你的问题,请参考以下文章

python Selenium 网页自动化

无头浏览器

java+selenium3自动化截图 (十四)

python3 selenium3 从框架实现代码学习selenium让你事半功倍

你是否了解谷歌的无头浏览器?

selenium3.4.0-java,启动谷歌浏览器和火狐浏览器