RHEL 8 - Selenium 未知错误:Chrome 无法启动:崩溃

问题描述 投票:0回答:3

错误

我明白了:

/opt/narjetas/node_modules/selenium-webdriver/lib/error.js:524
    let err = new ctor(data.message)
              ^

WebDriverError: unknown error: Chrome failed to start: crashed.
  (unknown error: DevToolsActivePort file doesn't exist)
  (The process started from chrome location /usr/bin/google-chrome is no longer running, so ChromeDriver is assuming that Chrome has crashed.)
    at Object.throwDecodedError (/opt/narjetas/node_modules/selenium-webdriver/lib/error.js:524:15)
    at parseHttpResponse (/opt/narjetas/node_modules/selenium-webdriver/lib/http.js:587:13)
    at Executor.execute (/opt/narjetas/node_modules/selenium-webdriver/lib/http.js:515:28)
    at processTicksAndRejections (node:internal/process/task_queues:96:5) {
  remoteStacktrace: '#0 0x564c9d0c4463 <unknown>\n' +
    '#1 0x564c9ce888d8 <unknown>\n' +
    '#2 0x564c9ceb0b6a <unknown>\n' +
    '#3 0x564c9ceabc05 <unknown>\n' +
    '#4 0x564c9ceef802 <unknown>\n' +
    '#5 0x564c9ceef2af <unknown>\n' +
    '#6 0x564c9cee7443 <unknown>\n' +
    '#7 0x564c9ceb83c5 <unknown>\n' +
    '#8 0x564c9ceb9531 <unknown>\n' +
    '#9 0x564c9d116dce <unknown>\n' +
    '#10 0x564c9d11a192 <unknown>\n' +
    '#11 0x564c9d0fb93e <unknown>\n' +
    '#12 0x564c9d11b103 <unknown>\n' +
    '#13 0x564c9d0eed85 <unknown>\n' +
    '#14 0x564c9d13c0a8 <unknown>\n' +
    '#15 0x564c9d13c239 <unknown>\n' +
    '#16 0x564c9d157492 <unknown>\n' +
    '#17 0x7f6d909171cf start_thread\n'
}

系统是RHEL 8,以无头模式运行。这在 Windows 上运行没有问题。我已经三次检查了 chromedriver 版本和我的浏览器版本,它们匹配。错误在这一行生成:

    let driver = new Builder()
    .forBrowser('chrome')
    .setChromeOptions(new chrome.Options().headless().windowSize(screen))
    .build();

系统信息

它运行在nodejs之上。

Chrome 版本:

[grant@lab backend]$ google-chrome --version
Google Chrome 107.0.5304.87

我正在使用此版本的 chromedriver(次要版本不匹配,但它们不需要匹配,并且这在 Windows 上不会出现任何问题 - 据我所知,当前次要版本没有 Chromedriver)

权限

chromedriver 的权限为 755,并且以用户身份运行(授予)

selenium google-chrome-headless headless-browser
3个回答
0
投票

这不是正确的答案,但如果其他人遇到困难,我只需将 Chrome 换成 Firefox,它就可以像开箱即用的冠军一样工作。

    console.log("BUILD 1");
    let driver = new Builder()
    .forBrowser('firefox')
    .setFirefoxOptions(new firefox.Options().headless().windowSize(screen))
    .build();

这是我必须做出的唯一改变,而且它立即就出现了。


0
投票

我有同样的问题,但通过安装 Java openjdk 解决了它

yum install java-1.8.0-openjdk-1.8.0.322.b06 -y 


0
投票

必须再次运行

npm init
,然后就可以正常工作了。

© www.soinside.com 2019 - 2024. All rights reserved.