一尘不染

WebDriverException:消息:在带有ChromeDriver和Selenium的Raspberry-Pi上,服务/ usr / lib / chromium-browser / chromedriver意外退出

selenium

我编写了一个Python脚本,该脚本在浏览器中执行某些任务(使用Selenium),在Windows中运行良好。现在,我试图将其安装到我的Raspberry
Pi上。

我进行了很多搜索,以找到使它与Chromium一起使用的最佳方法。我能找到的最好的就是这个Reddit
Link

问题是我找不到与我的Chromium版本(版本56.0.2924.84)兼容的chromedriver。当我进行apt-
get升级时,它会告诉我我具有最新版本的Chromium。我已经尝试从此Launchpad链接下载chromedriver 53至65版本。

所以当我运行以下命令时

from selenium import webdriver
driver_path = 'usr/lib/chromium-browser/chromedriver'
driver = webdriver.Chrome(driver_path)

chrome驱动程序> 58时出现此错误

selenium.common.exceptions.SessionNoteCreatedException: Message: session not 
created exception: Chrome version must be >= 59.0.3071.0
(Driver info: chromedriver=2.43,platform=Linux 4.9.35-v7+ armv7l)

或Chrome驱动程序<58时出现此错误

selenium.common.exceptions.WebDriverException: Message: 
Service /usr/lib/chromium-browser/chromedriver unexpectedly exited. Status code was: 127

这里的任何帮助将不胜感激


阅读 347

收藏
2020-06-26

共1个答案

一尘不染

根据您的问题,您的 Chromium 二进制文件的 版本为56.0.2924.84 。因此,考虑到这一限制,解决方案是从
ChromeDriver Google
Storage
下载以下
任一ChromeDriver 版本
****

  • ChromeDriver v84:支持Chrome v84
  • ChromeDriver v83:支持Chrome v83
  • ChromeDriver v82: 被故意跳过
  • ChromeDriver v81:支持Chrome v81
  • ChromeDriver v80:支持Chrome v80
  • ChromeDriver v79:支持Chrome v79
  • ChromeDriver v78:支持Chrome v78
  • ChromeDriver v77:支持Chrome v77
  • ChromeDriver v76:支持Chrome v76
  • ChromeDriver v75:支持Chrome v75
  • ChromeDriver v74:支持Chrome v74
  • ChromeDriver v73:支持Chrome v73
  • ChromeDriver v2.46:支持Chrome v71-73
  • ChromeDriver v2.46:支持Chrome v71-73
  • ChromeDriver v2.45:支持Chrome v70-72
  • ChromeDriver v2.44:支持Chrome v69-71(与ChromeDriver 2.43相同,但具有其他错误修复)
  • ChromeDriver v2.43:支持Chrome v69-71
  • ChromeDriver v2.42:支持Chrome v68-70
  • ChromeDriver v2.41:支持Chrome v67-69
  • ChromeDriver v2.40:支持Chrome v66-68
  • ChromeDriver v2.39:支持Chrome v66-68
  • ChromeDriver v2.38:支持Chrome v65-67
  • ChromeDriver v2.37:支持Chrome v64-66
  • ChromeDriver v2.36:支持Chrome v63-65
  • ChromeDriver v2.35:支持Chrome v62-64
  • ChromeDriver v2.34:支持Chrome v61-63
  • ChromeDriver v2.33:支持Chrome v60-62
  • ChromeDriver v2.32:支持Chrome v59-61
  • ChromeDriver v2.31:支持Chrome v58-60
  • ChromeDriver v2.30:支持Chrome v58-60
  • ChromeDriver v2.29:支持Chrome v56-58
  • ChromeDriver v2.28:支持Chrome v55-57
  • ChromeDriver v2.27:支持Chrome v54-56

注意 :几个月前, Chromium小组
宣布
了ChromeDriver的版本控制模型将发生变化的初步声明铬团队 正在推进该计划。具体来说,ChromeDriver
2.46将是包含主要版本2的最新版本。未来的ChromeDriver版本将具有与Chrome版本类似的版本号。我们将从下周的ChromeDriver
73版本开始,而不是Beta版本的Chrome 73。

这是新发行模型的工作方式:

  • ChromeDriver将使用与Chrome相同的版本号方案。有关更多详细信息,请参见https://www.chromium.org/developers/version-numbers
  • 每个版本的ChromeDriver将支持具有匹配的主要,次要和内部版本号的Chrome。例如,即将发布的ChromeDriver 73.0.3683。*将支持所有以73.0.3683开头的Chrome版本。
  • 在新的主要版本的Chrome进入Beta版之前,将发布匹配版本的ChromeDriver。例如,下周将发布新版本的ChromeDriver,以匹配Beta版本的Chrome m73。
  • 最初发行新的主要版本后,我们将根据需要发行补丁。这些修补程序可能与Chrome更新不同步。

适用于Raspberry Pi的ChromeDriver

使用 Raspberry Pi时,
您需要从此链接下载 ChromeDriverarm 格式,并在程序中使用它。
__


其他注意事项

  • Selenium 升级到当前 版本3.11.0
  • 按照上述讨论升级 ChromeDriver
  • Chrome 版本保持在 Chrome v56.x 级别。(根据讨论)
  • 清理 你的 项目工作 ,通过你的 IDE重建 仅需要依赖你的项目。
  • 在执行 测试套件 之前和之后,使用 CCleaner 工具清除所有操作系统琐事。 __
  • 如果您的基本 Web客户端 版本太旧,请通过 Revo Uninstaller 卸载它,然后安装最新的GA和 Web客户端 发行版本。
  • 进行 系统重启
  • 执行您的@Test
2020-06-26