Selenium启动Chrome浏览器后立即关闭及版本不兼容问题求助
解决方案
核心问题:ChromeDriver与Chrome版本不匹配
报错信息明确指出:当前ChromeDriver版本114仅支持Chrome 114,但你的Chrome浏览器是116.0.5845.111,版本不兼容导致会话创建失败,浏览器启动后立即关闭。
方法1:手动匹配ChromeDriver版本
- 打开Chrome浏览器,通过
chrome://version/确认完整版本号 - 下载对应主版本(116)的ChromeDriver,确保驱动主版本号与浏览器主版本一致
- 替换代码中
System.setProperty里的驱动路径为新下载的ChromeDriver路径,重新运行代码
方法2:使用WebDriverManager自动管理驱动(推荐)
该工具会自动检测浏览器版本,下载并配置对应版本的ChromeDriver,无需手动操作:
- 在POM.xml中添加WebDriverManager依赖:
<dependency> <groupId>io.github.bonigarcia</groupId> <artifactId>webdrivermanager</artifactId> <version>5.3.2</version> <!-- 可使用最新稳定版本 --> </dependency>
- 修改Java代码,移除手动设置驱动路径的代码,改用WebDriverManager初始化:
package com.Rezaid.webdriver; import org.openqa.selenium.chrome.ChromeDriver; import io.github.bonigarcia.wdm.WebDriverManager; public class OpenBrowser { public static void main(String[] args) { WebDriverManager.chromedriver().setup(); ChromeDriver driver = new ChromeDriver(); driver.get("https://www.google.com"); System.out.println(driver.getCurrentUrl()); // 可选:若需保持浏览器打开,可注释掉quit();程序执行完默认会自动关闭浏览器 // driver.quit(); } }
消除SLF4J警告(可选)
报错中的SLF4J警告不影响程序核心功能,若要消除,在POM.xml中添加SLF4J的实现依赖:
<dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-simple</artifactId> <version>2.0.7</version> <scope>test</scope> </dependency>
内容的提问来源于stack exchange,提问作者Ammad testh
相关产品推荐
相关产品推荐

