Exception in thread “main” java.lang.IllegalStateException: The path to the driver executable must be set by the webdriver.gecko.driver system property; for more information, see https://github.com/mozilla/geckodriver. The latest version can be downloaded from https://github.com/mozilla/geckodriver/releases
有不少开发者在初次尝试Selenium的时候会报出这个问题,这个问题在字面上的意思是需要一个火狐驱动,然后后面给了下载驱动的地址。自从selenium升级到了3.0以上,浏览器的自动化就需要驱动文件来驱动了。firefox浏览器的版本,selenium-java的版本,firefox的驱动版本都是最高版本。我在网上看的selenium环境搭建,用的都是最高版本,遇到了这个问题。
最后发现,执行的时候报错
我起初以为是版本问题没有匹配上,然后我就按照环境搭建教程里面的版本下载的(可能教程都比较老,所以版本号也略低),发现还是报的一样的错误。
解决方案
实际上是环境变量名出现问题,错误日志里面也提到了,把上面的火狐驱动的环境变量的变量名“webdriver.firefox.driver”换成“webdriver.gecko.driver”,问题即可解决。
代码如下:控制台打印:
启动成功。控制台打印的错误是百度的https协议报错,我本地是http的,所以出现了报错,但是不影响使用。