Selenium Chrome 浏览器 org.openqa.selenium.WebDriverException:等待驱动程序服务器启动超时

Jim*_*aac 1 selenium selenium-chromedriver selenium-webdriver

public class Dem {
    public static void main(String[] args) throws InterruptedException {
    WebDriver driver;
    String url = "https://www.google.com";
    System.setProperty("webdriver.chrome.driver","C:\\Users\\Jim\\Downloads\\chromedriver_win32\\chromedriver.exe");
    driver = new ChromeDriver();
    driver.get(url);
    driver.close();
    }
}
Run Code Online (Sandbox Code Playgroud)

Selenium webdriver 和 Chrome 驱动程序是最新版本

硒网络驱动程序:3.14.0

铬驱动程序:2.42

java:1.8.0_181

这是运行代码后的错误。谷歌浏览器根本无法启动。

严重:org.apache.commons.exec.ExecuteException:进程退出并出现错误:-1073741792(退出值:-1073741792)线程“main”org.openqa.selenium.WebDriverException 中的异常:等待驱动程序服务器启动超时。构建信息:版本:'3.14.0',修订:'aacccce0',时间:'2018-08-02T20:13:22.693Z' 驱动程序信息:driver.version:org.openqa.selenium.remote.service 上的 ChromeDriver。 DriverService.waitUntilAvailable(DriverService.java:193) at org.openqa.selenium.remote.service.DriverService.start(DriverService.java:179) at org.openqa.selenium.remote.service.DriverCommandExecutor.execute(DriverCommandExecutor.java: 79) 在 org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:548) 在 org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:212) 在 org.openqa.selenium.remoterWebDriverWebDriver .(RemoteWebDriver.java:130) 在 org.openqa.selenium.chrome.ChromeDriver.(ChromeDriver.java:181) 在 org.openqa.selenium.chrome.ChromeDriver.(ChromeDriver.java:168) at org.openqa.selenium.chrome.ChromeDriver.(ChromeDriver.java:123) at news.Dem.main(Dem.java:17) 引起:org.openqa.selenium.net.UrlChecker$TimeoutException:超时等待 [http://localhost:32986/status]在 org.openqa.selenium.net.UrlChecker.waitUntilAvailable(UrlChecker.java:100) 在 org.openqa.selenium.remote.service.DriverService.waitUntilAvailable() 20002 毫秒后可用DriverService.java:188) ... 9 更多

Nav*_*asu 5

调试步骤

它可能是以下两个问题之一。

1. Chrome 驱动由于某种原因没有启动:

在终端手动运行 chrome 驱动程序

C:\用户\吉姆> C:\Users\Jim\Downloads\chromedriver_win32\chromedriver.exe

现在我们必须得到以下消息,表示服务器已成功启动。 在此处输入图片说明

如果您没有收到以上消息并且您的服务器未启动,请检查您收到的错误是什么并相应地做出响应?可能下载了损坏的二进制文件,重新下载。

2. 无法访问主机名为 chrome 驱动程序 localhost

如果您能够按照上述步骤成功启动 chromedriver,现在尝试使用相应端口访问以下 url。 http://localhost:{port}/status

例如,在上面的消息中,服务器在端口 9515 上启动。在浏览器中访问 url, http://localhost:9515/status

在此处输入图片说明

你应该得到上面的消息,表明可以使用主机名访问服务器 localhost

如果您无法访问,请使用管理员权限在编辑器中打开 C:\Windows\System32\drivers\etc\hosts 并检查localhostDNS 是否映射到127.0.0.1

在此处输入图片说明