Selenium Java启动ChromeDriver报错:等待驱动服务器启动超时
Java Selenium ChromeDriver启动超时问题解决办法
错误根因
该Timed out waiting for driver server to start报错本质是Selenium进程无法与已启动的ChromeDriver本地服务完成通信握手,20s超时后触发异常。
可执行修复步骤
- 核对版本匹配关系:当前使用的ChromeDriver版本为91.0.4472.19,必须保证本地安装的Chrome浏览器大版本同样为91,大版本不兼容是该问题最高发的诱因。
- 升级Selenium依赖版本:当前使用的Selenium 3.14.0为2018年发布的旧版本,对91版ChromeDriver的支持存在已知缺陷,建议升级到3.x系列最终稳定版3.141.59,或直接使用4.x系列稳定版。
- 修正ChromeDriver路径配置:代码中
"chromedriver path"需替换为chromedriver.exe的本地完整绝对路径,Windows系统下路径分隔符需使用双反斜杠或者正斜杠,避免路径识别失败。 - 排查本地网络拦截:确认防火墙、代理工具没有拦截localhost本地端口通信,部分全局代理工具会默认拦截本地回环请求,导致Selenium无法访问ChromeDriver的状态接口。
- 增加Chrome启动参数规避限制:可通过ChromeOptions添加兼容参数,规避系统权限限制类问题,修改后代码示例如下:
System.setProperty("webdriver.chrome.driver", "C:\\dev\\chromedriver91\\chromedriver.exe"); ChromeOptions options = new ChromeOptions(); options.addArguments("--no-sandbox"); options.addArguments("--disable-dev-shm-usage"); WebDriver driver = new ChromeDriver(options); driver.get("https://www.google.com/");
内容的提问来源于stack exchange,提问作者techiva.blogspot.com
相关产品推荐
相关产品推荐

