You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Selenium ChromeDriver Java启动报错:DevToolsActivePort文件不存在

解决Selenium Chrome启动后无法加载URL(DevToolsActivePort文件不存在)问题

核心问题分析

从报错日志和环境信息来看,核心问题有三点:

  • Chrome浏览器版本(104.0.5112.102)与ChromeDriver版本(103.0.5060.134)不匹配
  • 原代码中Windows路径未做转义处理,导致驱动无法正确识别路径
  • Chrome启动时缺少必要参数,引发DevToolsActivePort文件缺失问题

具体解决步骤

1. 匹配Chrome与ChromeDriver版本

ChromeDriver版本必须和Chrome浏览器主版本号严格一致:

  • 卸载当前103版本的ChromeDriver
  • 下载对应Chrome 104版本的ChromeDriver
  • 若使用WebDriverManager,可手动指定版本确保匹配:
    WebDriverManager.chromedriver().driverVersion("104.0.5112.79").setup();
    

2. 修正路径转义问题

Windows系统中,文件路径的反斜杠需要转义,可采用两种方式:

// 方式1:双反斜杠转义
System.setProperty("webdriver.chrome.driver","C:\\Users\\user\\Desktop\\ecli\\chromedriver.exe");
// 方式2:使用正斜杠替代反斜杠
System.setProperty("webdriver.chrome.driver","C:/Users/user/Desktop/ecli/chromedriver.exe");

3. 添加Chrome启动参数解决DevToolsActivePort问题

创建ChromeOptions对象,添加必要启动参数,避免端口异常:

ChromeOptions options = new ChromeOptions();
options.addArguments("--no-sandbox");
options.addArguments("--disable-dev-shm-usage");
options.addArguments("--remote-debugging-port=9222");
options.addArguments("--start-maximized"); // 可选:最大化窗口启动

// 初始化驱动时传入配置
WebDriver driver = new ChromeDriver(options);
driver.get("https://rahulshettyacademy.com/");
System.out.println(driver.getTitle());

4. 关于SLF4J警告

日志中的SLF4J警告是项目缺少SLF4J实现依赖导致,不影响Selenium核心功能;若要消除警告,可在项目依赖中添加SLF4J绑定(如logback-classic或slf4j-simple)。


内容的提问来源于stack exchange,提问作者user19810982

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.21 08:54:24