WebDriverException:消息:未知错误:Chrome 无法启动:在 debian 服务器上使用 ChromeDriver Chrome 和 Selenium 异常退出

WebDriverException: Message: unknown error: Chrome failed to start: exited abnormally with ChromeDriver Chrome and Selenium on debian server(WebDriverException:消息:未知错误:Chrome 无法启动:在 debian 服务器上使用 ChromeDriver Chrome 和 Selenium 异常退出)
本文介绍了WebDriverException:消息:未知错误:Chrome 无法启动:在 debian 服务器上使用 ChromeDriver Chrome 和 Selenium 异常退出的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我尝试在 debian 服务器 8.11 上运行 selenium webdriver 并收到错误.

i try to run the selenium webdriver on a debian server 8.11 and get an error.

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

Java: java version "1.7.0_221", OpenJDK Runtime Environment (IcedTea 2.6.18)

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

Webdriver: 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)

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

I try several solutions but nothing works...

推荐答案

这个错误信息...

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 无法启动/生成新的 WebBrowserChrome 浏览器 会话.

...implies that the ChromeDriver was unable to initiate/spawn a new WebBrowser i.e. Chrome Browser session.

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

Your main issue is the incompatibility between the version of the binaries you are using as follows:

  • 您正在使用 chromedriver=2.9
  • chromedriver=2.9 的发行说明明确提及以下内容:

支持 Chrome v31-34

  • 大概你正在使用 chrome= 76.0
  • ChromeDriver v76.0的发行说明/a> 明确提及以下内容:
    • Presumably you are using chrome= 76.0
    • Release Notes of ChromeDriver v76.0 clearly mentions the following :
    • 支持Chrome 76版

      • 您的 Selenium 客户端 版本对我们来说是未知.
      • 您提到JDK 版本 是1.7.0_221,相当古老.
        • Your Selenium Client version is unknown to us.
        • You mentioned about JDK version is 1.7.0_221 which is pretty ancient.
        • 所以 ChromeDriver v2.9Chrome 浏览器 v76.0

          确保:

          • Selenium 已升级到当前级别版本 3.141.59.
          • ChromeDriver 已更新为当前 ChromeDriver v76.0 级别.
          • Chrome 已更新至当前 Chrome 版本 76.0 级别.(根据 ChromeDriver v76.0 发行说明)
          • 清理你的项目工作区通过你的IDE重建你的项目只需要依赖.
          • 如果您的基础 Web Client 版本太旧,请通过 卸载它Revo Uninstaller 并安装最新的 GA 和发布版本的 Web Client.
          • 进行一次系统重启.
          • 非 root 用户身份执行您的 @Test.
          • 总是在 tearDown(){} 方法中调用 driver.quit() 来关闭 &优雅地销毁 WebDriverWeb Client 实例.
          • Selenium is upgraded to current levels Version 3.141.59.
          • ChromeDriver is updated to current ChromeDriver v76.0 level.
          • Chrome is updated to current Chrome Version 76.0 level. (as per ChromeDriver v76.0 release notes)
          • Clean your Project Workspace through your IDE and Rebuild your project with required dependencies only.
          • If your base Web Client version is too old, then uninstall it through Revo Uninstaller and install a recent GA and released version of Web Client.
          • Take a System Reboot.
          • Execute your @Test as non-root user.
          • Always invoke driver.quit() within tearDown(){} method to close & destroy the WebDriver and Web Client instances gracefully.

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

          You can find a couple of relevant discussions in:

          • 消息:未知错误:Chrome 无法启动:在 AWS Cloud9 上使用 Linux 4.9.85-38.58.amzn1.x86_64 x86_64 异常退出
          • WebDriverException:消息:未知错误:Chrome 无法启动:在 VPS 上通过 Python 使用 ChromeDriver Chrome 和 Selenium 异常退出
          • WebDriverException:消息:未知错误:Chrome 无法启动:在 VPS 上通过 Python 使用 ChromeDriver Chrome 和 Selenium 异常退出

          这篇关于WebDriverException:消息:未知错误:Chrome 无法启动:在 debian 服务器上使用 ChromeDriver Chrome 和 Selenium 异常退出的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

Leetcode 234: Palindrome LinkedList(Leetcode 234:回文链接列表)
How do I read an Excel file directly from Dropbox#39;s API using pandas.read_excel()?(如何使用PANDAS.READ_EXCEL()直接从Dropbox的API读取Excel文件?)
subprocess.Popen tries to write to nonexistent pipe(子进程。打开尝试写入不存在的管道)
I want to realize Popen-code from Windows to Linux:(我想实现从Windows到Linux的POpen-code:)
Reading stdout from a subprocess in real time(实时读取子进程中的标准输出)
How to call type safely on a random file in Python?(如何在Python中安全地调用随机文件上的类型?)