无法使用Selenium打开铬

时间:2014-08-21 05:40:55

标签: selenium-webdriver selenium-chromedriver

我使用以下代码运行chrome驱动程序:

import org.openqa.selenium.*;

import org.openqa.selenium.chrome.ChromeDriver;

public class TestClass 
{

    public static void main(String[] args){
        System.setProperty("webdriver.chrome.driver", "/Users/raisa/Documents/Selenium/chromedriver.exe");
        WebDriver driver = new ChromeDriver();
        driver.get("http://www.google.com");
        driver.quit();
    }
}

但是我收到了这个错误:

Exception in thread "main" java.lang.IllegalStateException: The driver executable does not exist: /Users/raisa/Documents/Selenium/chromedriver.exe
    at com.google.common.base.Preconditions.checkState(Preconditions.java:177)
    at org.openqa.selenium.remote.service.DriverService.checkExecutable(DriverService.java:117)
    at org.openqa.selenium.remote.service.DriverService.findExecutable(DriverService.java:112)
    at org.openqa.selenium.chrome.ChromeDriverService.createDefaultService(ChromeDriverService.java:89)
    at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:117)
    at TestClass.main(TestClass.java:11)

我已从http://chromedriver.storage.googleapis.com/index.html

下载了最新的Chrome驱动程序

2 个答案:

答案 0 :(得分:3)

我同意这些意见。 在Mac OS上,.exe之后不会需要chromedriver

对于您的示例,您希望它看起来像这样:/Users/raisa/Documents/Selenium/chromedriver

我也看到了这个问题,因为没有为文件设置执行权限。 因此,仔细检查文件权限,以及文件是否在给定的实际路径中。

答案 1 :(得分:0)

通过终端导航到chromedriver所在的地方,然后执行以下命令。

xattr -d com.apple.quarantine chromedriver