关于selenium Webdriver的GeckoDriver介绍

本文介绍了在Selenium3中,由于不直接支持40版本以上的Firefox,因此需要使用GeckoDriver来驱动Firefox浏览器。当尝试运行Java代码打开浏览器时,会遇到错误提示,需要设置webdriver.gecko.driver系统属性。解决方案包括下载并安装GeckoDriver,然后更新代码,确保正确引用。通过这些步骤,最终可以成功运行代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

GeckoDriver用于驱动Firefox

使用GeckoDriver背景:
一、Selenium3不支持向前支持火狐浏览器了,40以后版本的火狐,运行会出现问题。
:【java代码】打开浏览器,输入"WebDriver",搜索后,关闭浏览器
package com.selenium.test;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;

public class seleniumHello {

public static void main(String[] args) {
    //需要自己确定火狐浏览器的安装路径
    System.setProperty("webdriver.firefox.bin", "D:/Program Files/Mozilla Firefox/firefox.exe"); 
    //定义驱动对象为 FirefoxDriver 对象
    WebDriver driver = new FirefoxDriver();
    //打开的网址
    driver.get("http://www.baidu.com/");

    //定位输入框元素
    WebElement txtbox = driver.findElement(By.name("wd"));
    //在输入框输入文本
    txtbox.sendKeys("WebDriver");
    //定位按钮元素
    WebElement btn = driver.findElement(By.id("su"));
    //点击按钮
    btn.click();

    //关闭驱动
    driver.close();
}
}

运行之后出现的error
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

解决办法
1.安装geckodriver

  • GeckoDriver的安装

           GitHub:https://github.com/mozilla/geckodriver
           
           下载地址:https://github.com/mozilla/geckodriver/releases
           
          (下载这个我也是折腾了好一会 ̄□ ̄||,我这边最终用谷歌下载的,
           下载后记得解压并放在自己设定的目录下)
    

2.将代码改为如下:
package com.selenium.test;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;

public class seleniumHello {

public static void main(String[] args){
	System.setProperty("webdriver.gecko.driver", "D:\\selenium\\geckodriver.exe");
	WebDriver driver=new FirefoxDriver();
	driver.get("http://www.baidu.com/");
	driver.manage().window().maximize();
	WebElement txtbox=driver.findElement(By.name("wd"));
	txtbox.sendKeys("WebDriver");
	WebElement btn=driver.findElement(By.id("su"));
	btn.click();
	driver.close();
}
}

最终代码就可以运行成功啦!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值