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

如何在Selenium Java中绕过Edge Chromium的登录验证界面

解决Selenium启动Edge(Chromium)卡在「Sign in to Profile」登录界面的问题

问题分析

在启用组策略的SOE环境中,Edge被强制要求使用已登录的配置文件运行,而Selenium默认启动的干净浏览器实例不符合组策略要求,因此被拦截到登录界面。以下是可尝试的解决方案:

可行解决方案

1. 正确组合配置文件参数并禁用首次启动引导

必须同时指定用户数据目录和已登录的配置文件目录,同时禁用首次启动的引导流程,避免触发组策略检查:

EdgeOptions options = new EdgeOptions();
// 替换<username>为你的Windows用户名,注意Java路径的双反斜杠转义
options.addArguments("--user-data-dir=C:\\Users\\<username>\\AppData\\Local\\Microsoft\\Edge\\User Data");
// 替换为你实际存在的配置文件文件夹(比如你新建的Profile 1,对应UI显示的Profile 2)
options.addArguments("--profile-directory=Profile 1");
// 禁用首次启动引导和默认浏览器检查
options.addArguments("--no-first-run");
options.addArguments("--no-default-browser-check");
// 添加堆栈提示的必要参数
options.addArguments("--allow-profiles-outside-user-dir");

EdgeDriver driver = new EdgeDriver(options);

注意:确保指定的配置文件已经手动登录过并通过组策略验证,否则仍会触发登录提示。

2. 添加禁用登录提示的特性参数

如果组策略仅强制弹出登录提示,可尝试禁用浏览器登录功能:

options.addArguments("--disable-features=BrowserSignin");

3. 解决DevToolsActivePort错误

当出现SessionNotCreatedException提示DevToolsActivePort不存在时,指定远程调试端口并确保启动前关闭所有Edge进程:

options.addArguments("--remote-debugging-port=9222");

4. 联系IT调整组策略(最后手段)

如果以上所有参数都无法绕过限制,说明组策略的管控逻辑较为严格,此时需要联系IT团队:

  • 申请创建自动化测试专用的组策略例外,允许未登录的浏览器实例启动
  • 放宽对自动化测试场景下的登录强制要求

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 23:20:43