selenium使用ChromeDriver
什么是ChromeDriver?
ChromeDriver是Chromium team开发维护的,它是实现WebDriver有线协议的一个单独的服务。ChromeDriver通过chrome的自动代理框架控制浏览器,ChromeDriver只与12.0.712.0以上版本的chrome浏览器兼容。
那么要想selenium成功的操作chrome浏览器需要经历如下步骤:
1、下载ChromeDriver驱动包(下载地址:http://chromedriver.storage.googleapis.com/index.html?path=2.7/
注意阅读note.txt下载与自己所使用浏览器一致版本的驱动包。
2、指定ChromeDriver所在位置,可以通过两种方法指定:
1)通过配置ChromeDriver.exe位置到path环境变量实现。
2)通过webdriver.chrome.driver.系统属性实现。实现代码如下:
|
System.setProperty("webdriver.chrome.driver", "C:\\Documents and Settings\\Administrator\\Local Settings\\Application Data\\Google\\Chrome\\Application\\chromedriver.exe"); |
3、最后需要做的就是创建一个新的ChromeDriver的实例。
|
WebDriver driver = new ChromeDriver(); |
至此我们就可以通过chrome浏览器来执行我们的自动化代码了。
完整实例代码如下:
|
public static void main(String[] args) { // TODO Auto-generated method stub //设置访问ChromeDriver的路径 System.setProperty("webdriver.chrome.driver", WebDriver driver = new ChromeDriver(); driver.get("http://www.baidu.com/"); } |
btw:
chrome浏览器在各个系统默认位置:
|
OS |
Expected |
|
Linux |
/usr/bin/google-chrome1 |
|
Mac |
/Applications/Google\ |
|
Windows XP |
%HOMEPATH%\Local |
|
Windows |
C:\Users\%USERNAME%\AppData\Local\Google\Chrome\Application\chrome.exe |
1.1.1
执行以上代码你会发现ChromeDriver仅是在创建是启动,调用quit时关闭浏览器,ChromeDriver是轻量级的服务若在一个比较大的测试套件中频繁的启动关闭,会增加一个比较明显的延时导致浏览器进程不被关闭的情况发生,为了避免这一状况我们可以通过ChromeDriverService来控制ChromeDriver进程的生死,达到用完就关闭的效果避免进程占用情况出现(Running the server in a child process)。
具体实现如下:
|
ChromeDriverService service = new |
转载:http://www.51testing.com/html/94/304294-855036.html
selenium使用ChromeDriver的更多相关文章
- Pyinstaller打包selenium去除chromedriver黑框问题解决!!!
Pyinstaller打包selenium去除chromedriver黑框问题解决!!! 问题描述 [1123/101706.932:ERROR:gpu_process_transport_f ...
- 爬虫进阶之Selenium和chromedriver,动态网页(Ajax)数据抓取
什么是Ajax: Ajax(Asynchronouse JavaScript And XML)异步JavaScript和XML.过在后台与服务器进行少量数据交换,Ajax 可以使网页实现异步更新.这意 ...
- 爬虫--selenium之 chromedriver与chrome版本映射表(最新至v2.46版本chromedriver)
本文主要整理了selenium的chromedriver与chrome版本映射表,并且持续更新中..... 1.selenium之 chromedriver与chrome版本映射表(最新至v2.46版 ...
- Centos7安 装python3+Selenium+chrome+chromedriver
Centos7安装python3+Selenium+chrome+chromedriver详细python2和python3共存,Selenium错误的处理更新Centos源 wget -O /etc ...
- Installing Selenium and ChromeDriver on Ubuntu
I recently got Selenium, Google Chrome, and ChromeDriver installed and working on a DigitalOcean ins ...
- python Selenium启动chromedriver
从网上下载对应版本的chromedriver之后,里面的内容仅为一个.exe文件, 将其解压在chrome的安装目录下(C:\Program Files (x86)\Google\Chrome\App ...
- selenium缺少chromedriver解决方法
1.安装好selenium,运行一段测试代码: from selenium import webdriver brower = webdriver.Chrome() brower.get('www.b ...
- python使用selenium安装chromedriver的问题
环境 win64位,python3.6, 问题与解决 说来也巧,今天无意中解决了两个多月前的问题,即用selenium调用chrome浏览器报错的问题:起因是在知乎中看到了一篇12306抢票的文章,用 ...
- 安装selenium和chromedriver
网上找的算法,在运行爬虫代码时,需要Selenium+Phantomjs实现,我改成了用Selenium+Chrome:针对指定网址,自动打开浏览器,输入关键词搜索,并保存搜索的内容. 1. 安装se ...
- [Auto Testing] 工具准备:Selenium 与 ChromeDriver
<留存> Selenium http://selenium-release.storage.googleapis.com/index.html https://www.seleniumhq ...
随机推荐
- 一次SQL Server 10054 Troubleshooting
问题 对某个库新增了一个订阅节点,然后需要把一些应用切到新订阅库,以分散负载.当应用切换后,有一个应用每次启动不到30秒,总是报超时的错误,而error log中又没有任何记录: Timeout ex ...
- 探秘VB.net中的shared与static
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/huyuyang6688/article/details/28230345 简单了解了一 ...
- 调用 SSPI 失败,请参见内部异常 解决方法
2017-11-12 12:49:53:706] OnServerConnectionAvailable error : System.Security.Authentication.Authenti ...
- (转)Android中的基类—抽取出来公共的方法
在Android中,一般来说一个应用会存在几十个页面,并且一个应用一般也会使用一个特定的主题,其中的页面的风格也是一致的,并且页面中的动画效果.页面的切换效果等也应该保持同样的风格,那么就需要一个基类 ...
- Java 局部变量和成员变量(全局变量)
局部变量 定义在类的方法内或者代码块内的变量 局部变量只在定义它的方法体内或者代码块内有效 局部变量在使用前,必须先初始化 全局变量(成员变量) 一个类中既不在方法体内,也不在程序块内定义的变量 类中 ...
- ubutun
地址:http://www.cnblogs.com/dutlei/archive/2012/11/20/2778327.html
- nginx.conf自己整理的中文解读
自己收集了网上有关conf文件的中文详解,这样以后就不怕看不懂nginx的配置文件啦! #定义Nginx运行的用户和用户组user www www; #nginx进程数,建议设置为等于CPU总核心数. ...
- Maven入门----介绍及环境搭建(一)
知识点: 介绍Maven 本机搭建Maven环境 DEMO测试 本地仓库迁出 Maven简介: 百度百科: 说到底就是一个项目管理工具. 本机搭建Maven环境: Maven的环境需要jdk环境的支持 ...
- Linux:课程安排、Linux简介、虚拟机安装、课前准备(常用设置和操作)
一.课程安排 1)Linux 的作用 商业服务器基本上都是 Linux: 开源软件都先支持 Linux: 大数据分析.机器学习首先选 Linux: 整个互联网地基靠Linux撑起来: Linux 系统 ...
- java代码反转toCharAT()的用法
总结:反转注意for循环里面的变化 package clientFrame; //字符串反转 public class we { public static void main(String[] ar ...