Java selenium错误——DevToolsActivePort file doesn't exist

错误

  • Ubuntu下运行一个selenium调用无头chrome浏览器,出现问题:DevToolsActivePort file doesn't exist

 

 

 

背景

  • 在Java项目中,使用selenium模拟谷歌浏览器打开系统页面,进行截图,在windows环境下运行都没有问题,可是部署到生成环境后,运行报错。

原因

  • 使用root安装的chrome,系统使用selenium打开chrome时,需要设置参数,使其在root权限下使用

解决办法

  • 设置参数如下
//设置为 headless 模式 (必须)
chromeOptions.addArguments("--headless");
chromeOptions.addArguments("--disable-gpu");//谷歌文档提到需要加上这个属性来规避bug
chromeOptions.addArguments("--no-sandbox");// “–no - sandbox”参数是让Chrome在root权限下跑
chromeOptions.addArguments("--disable-dev-shm-usage");
chromeOptions.addArguments("lang=zh_CN.UTF-8");
chromeOptions.addArguments("window-size=1920x1080"); //指定浏览器分辨率

 

posted @ 2022-03-21 18:46  话·醉月  阅读(3078)  评论(1编辑  收藏  举报