WebDriverException: Message: unknown error: Chrome failed to start: exited abnormally with ChromeDriver Chrome and Selenium on debian server

WebDriverException: Message: unknown error: Chrome failed to start: exited abnormally with ChromeDriver Chrome and Selenium on debian server

我尝试 运行 debian 服务器 8.11 上的 selenium webdriver,但出现错误。

Java:java 版本“1.7.0_221”,OpenJDK 运行时环境 (IcedTea 2.6.18)

网络驱动程序:ChromeDriver (v2.9.248304)

源代码:

from selenium import webdriver
from pyvirtualdisplay import Display

display = Display(visible=0, size=(800, 800))
display.start()
co = webdriver.ChromeOptions()
co.add_argument("--user-data-dir=profile")
browser = webdriver.Chrome('/usr/local/bin/chromedriver', options=co)
browser.get('example.com')
browser.quit()
display.close()

我收到这个错误:

Traceback (most recent call last):
  File "/bin/selenium", line 11, in <module>
    browser = webdriver.Chrome('/usr/local/bin/chromedriver', options=co)
  File "/usr/local/lib/python2.7/dist-packages/selenium/webdriver/chrome/webdriver.py", line 81, in __init__
    desired_capabilities=desired_capabilities)
  File "/usr/local/lib/python2.7/dist-packages/selenium/webdriver/remote/webdriver.py", line 157, in __init__
    self.start_session(capabilities, browser_profile)
  File "/usr/local/lib/python2.7/dist-packages/selenium/webdriver/remote/webdriver.py", line 252, in start_session
    response = self.execute(Command.NEW_SESSION, parameters)
  File "/usr/local/lib/python2.7/dist-packages/selenium/webdriver/remote/webdriver.py", line 321, in execute
    self.error_handler.check_response(response)
  File "/usr/local/lib/python2.7/dist-packages/selenium/webdriver/remote/errorhandler.py", line 242, in check_response
    raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.WebDriverException: Message: unknown error: Chrome failed to start: exited abnormally
  (Driver info: chromedriver=2.9.248304,platform=Linux 4.9.0-0.bpo.9-amd64 x86_64)

我尝试了几种解决方案,但没有任何效果...

这个错误信息...

selenium.common.exceptions.WebDriverException: Message: unknown error: Chrome failed to start: exited abnormally
  (Driver info: chromedriver=2.9.248304,platform=Linux 4.9.0-0.bpo.9-amd64 x86_64)

...意味着 ChromeDriver 无法 initiate/spawn 一个新的 WebBrowserChrome 浏览器 会话。

您的主要问题是您使用的二进制文件版本之间不兼容,如下所示:

  • 您正在使用 chromedriver=2.9
  • chromedriver=2.9 的发行说明清楚地提到了以下内容:

Supports Chrome v31-34

  • 推测你正在使用chrome= 76.0
  • ChromeDriver v76.0 的发行说明清楚地提到了以下内容:

Supports Chrome version 76

  • 您的 Selenium 客户端 版本对我们来说未知
  • 您提到 JDK 版本 是 1.7。0_221 非常古老。

因此 Chrome驱动程序 v2.9Chrome 浏览器 v76.0


解决方案

确保:

  • Selenium 已升级到当前级别 Version 3.141.59
  • Chrome驱动程序 已更新至当前 ChromeDriver v76.0 级别。
  • Chrome 已更新至当前 Chrome 版本 76.0 级别。 (根据 ChromeDriver v76.0 release notes
  • 通过IDE和[=41]清理您的项目工作区 =]重建你的项目只需要依赖。
  • 如果您的基础 Web Client 版本太旧,则通过 Revo Uninstaller 卸载它并安装最新的 GA 和发布版本的 Web Client .
  • 系统重启
  • 非 root 用户身份执行您的 @Test
  • 始终在 tearDown(){} 方法中调用 driver.quit() 以优雅地关闭和销毁 WebDriverWeb Client 实例.

参考资料

您可以在以下位置找到一些相关讨论: