火狐浏览器调试驱动插件geckodriver.exe,需要Firefox 45以上版本,selenium需要3以上版本。Selenium 3.x 在启动 Firefox 48.x 的时候,必须下载 geckodriver.exe 驱动,并将其路径配置在 Path 变量中。包括:arm、linux32、linux64、macos、win32、win64。
放置位置
Windows: python安装根目录(与python.exe 同一目录)
Mac: /user/local/bin
更新日志:
Firefox process is now terminated and session ended when the last window is closed
WebDriver library updated to version 0.20.0
Fixed
Stacktraces are now included when the error originates from within the Rust stack
HTTPD now returns correct response headers for Content-Type and Cache-Control thanks to @jugglinmike
如果你要使用Firefox, 就需要用到Mozilla自己的驱动实现: geckodriver ,
一个简单的例子
1 public static void main(String[] args)
{
2 System.setProperty("webdriver.gecko.driver", "d:\\geckodriver.exe");
3 DesiredCapabilities capabilities = DesiredCapabilities.firefox();
4 capabilities.setCapability("marionette", true);
5 WebDriver driver = new FirefoxDriver(capabilities);6 7
}
更新主要特性:
1、全面支持JDK8。毕竟JDK8是Oracle官方支持的版本,同时若想使用 java binding则必须使用JDK8了。预计selenium-standalone-server后续也会运行在 JDK8 上;
2、取消 Selenium RC 的支持,全面回归 WebDriver 协议;
3、通过 Mozilla 官方的 geckodriver 支持 Firefox。虽然之前谷大爷实现原生支持了火狐,但毕竟不是火狐自己实现的。同时新版本的火狐也更新了其新的引擎,google原生的驱动未实现新引擎的支持,所以 geckodriver 的出现也是一个必然。在 Selenium 3 中系统特性 webdriver.firefox.marionette 也进行了强制设定。
4、通过微软官方的ms webdriver支持 Edge 浏览器,注意仅支持 Version 9+。又是一个官方版本哦 ^_^,
5、支持 Mac OS(Safari 10+),支持官方的 safaridriver,由此看出 Apple 官方也买了 webdriver 协议的单哦 ^_^。是否由此可见 WebDriver 协议一统江湖的美好前景了,哈哈哈。。。