Rom*_*ush 5 java selenium headless selenium-chromedriver aws-lambda
我使用以下版本:
要创建 ChromeDriver,我使用以下配置:
WebDriverManager.chromedriver()
.targetPath("/tmp")
.setup();
ChromeOptions options = new ChromeOptions();
options.addArguments("--headless", "--no-sandbox", "--disable-dev-shm-usage");
options.setBinary("/tmp");
ChromeDriver driver = new ChromeDriver(options);
Run Code Online (Sandbox Code Playgroud)
当我运行我的 lambda 时,会发生以下异常(来自 lambda 日志):
org.openqa.selenium.WebDriverException: unknown error: Chrome failed to start: exited abnormally (unknown error: DevToolsActivePort file doesn't exist)
(The process started from chrome location /tmp is no longer running, so ChromeDriver is assuming that Chrome has crashed.)
Run Code Online (Sandbox Code Playgroud)
在 AWS Lambda 中安装 Chrome 浏览器并为 ChromeDriver 提供它有什么好方法吗?
setBinary()的方法ChromeOptions应该用于设置Chrome浏览器的路径。问题是您正在使用 WebDriverManager 设置chromedriver(即 Selenium WebDriver 与 Chrome 通信所需的二进制文件)下载的路径。因此,您需要删除该行:
options.setBinary("/tmp");
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1249 次 |
| 最近记录: |