Chrome Driver启动失败报错:无法发现打开页面 求技术支援
解决Chrome 110 + Selenium 4.8.1 驱动崩溃无法加载页面的问题
针对你遇到的SessionNotCreatedException: unknown error: unable to discover open pages错误,以下是几个可行的解决方案:
一、添加关键Chrome启动参数
在ChromeOptions中补充以下参数,解决常见的进程权限、资源限制问题:
ChromeOptions options = new ChromeOptions(); // 解除沙箱模式限制 options.addArguments("--no-sandbox"); // 避免共享内存不足导致的启动失败 options.addArguments("--disable-dev-shm-usage"); // 强制指定调试端口,规避端口冲突 options.addArguments("--remote-debugging-port=9222"); // 关闭GPU加速,提升headless模式兼容性 options.addArguments("--disable-gpu"); // 若使用无头模式,采用新版规范参数 options.addArguments("--headless=new"); WebDriver driver = new ChromeDriver(options);
二、排查安全软件拦截
暂时关闭杀毒软件、防火墙或Windows Defender实时保护,确认是否是安全软件阻止了ChromeDriver启动Chrome进程。若恢复正常,将ChromeDriver和Chrome程序添加到安全软件白名单。
三、使用全新Chrome用户配置
原有Chrome配置文件损坏可能导致页面加载失败,指定临时新配置目录:
ChromeOptions options = new ChromeOptions(); // 自定义临时配置文件夹路径,可自行修改 options.addArguments("user-data-dir=C:\\Users\\你的用户名\\AppData\\Local\\Temp\\ChromeTempProfile"); WebDriver driver = new ChromeDriver(options);
四、手动指定ChromeDriver路径
即使Selenium自带驱动,手动指定对应版本的ChromeDriver路径也可能解决匹配问题:
System.setProperty("webdriver.chrome.driver", "C:\\path\\to\\chromedriver.exe"); ChromeOptions options = new ChromeOptions(); WebDriver driver = new ChromeDriver(options);
五、以管理员权限运行脚本
右键点击脚本运行程序(IDE或命令提示符),选择「以管理员身份运行」,避免权限不足导致驱动无法启动浏览器。
内容的提问来源于stack exchange,提问作者Kishan Bheemajiyani
相关产品推荐
相关产品推荐

