【问题标题】:Exception in thread "main" java.lang.IllegalStateException for using Selenium使用 Selenium 的线程“主”java.lang.IllegalStateException 中的异常
【发布时间】:2017-01-28 23:03:09
【问题描述】:

我正在使用 Selenium 填写网络表单。我将 libraryclient-combined 3.0.0 beta 3 添加到文档中。我的 firefox 版本应该是最新的。但是,它出现错误。如何解决?或者使用 webdriver 作为 Chrome 更好?

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

public class Selenium {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {



WebDriver driver=new FirefoxDriver();

driver.get("https://mail.google.com");
driver.findElement(By.id("Email")).sendKeys("yourEmailId");
driver.findElement(By.id("Passwd")).sendKeys("yourPassword");
driver.findElement(By.id("signIn")).click();

}

}

线程“main”中的异常 java.lang.IllegalStateException:驱动程序可执行文件的路径必须由 webdriver.gecko.driver 系统属性设置;有关详细信息,请参阅https://github.com/mozilla/geckodriver。最新版本可以从https://github.com/mozilla/geckodriver/releases下载

【问题讨论】:

  • 正如错误所说,您需要使用 webdriver.gecko.driver 设置 geckodriver;我建议尝试使用 chrome 驱动程序,请参阅此处如何启动 selenium stackoverflow.com/questions/39468600/…
  • 我应该在哪里实现代码java -Dwebdriver.chrome.driver=chromedriver.exe -jar selenium-server-standalone-3.0.0-beta2.jar
  • 在另一个控制台运行它,这就是你启动 selenium 服务器的方式

标签: java selenium bots


【解决方案1】:

对于带有 Firefox 的 Selenium 3.x,请使用

System.setProperty("webdriver.gecko.driver", "path.to.geckodriver.exe");  
WebDriver driver = new FirefoxDriver();

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-03-16
    • 2017-01-11
    • 1970-01-01
    • 2018-11-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-16
    相关资源
    最近更新 更多