代码之家  ›  专栏  ›  技术社区  ›  yoyoyoyo123

WebDriverException:消息:Service/usr/lib/ChromeBrowser/chromedriver在Raspberry Pi上意外退出chromedriver和Selenium

  •  3
  • yoyoyoyo123  · 技术社区  · 7 年前

    我编写了一个python脚本,它在浏览器中执行一些任务(使用Selenium),在Windows中运行良好。现在我想把它放到我的树莓皮上。

    我做了很多搜索,以找到最好的方法,使这与铬的工作。我能找到的最好的就是这个 Reddit Link

    问题是我找不到与我的Chrome版本(版本56.0.2924.84)兼容的chromedriver。当我进行apt升级时,它会建议我使用最新版本的Chromium。我从这里下载了chromedriver版本53到65 Launchpad Link

    所以当我运行以下命令时

    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
    

    如有任何帮助,我们将不胜感激

    2 回复  |  直到 6 年前
        1
  •  0
  •   Milovan TomaÅ¡ević    3 年前

    根据你的问题 二进制是的 版本56.0.2924.84 。因此,考虑到此限制,解决方案是下载以下任一项 镀铬驱动器 版本来源 ChromeDriver Google Storage

    • 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:支持铬v71-73
    • ChromeDriver v2。46:支持铬v71-73
    • ChromeDriver v2。45:支持铬v70-72
    • ChromeDriver v2。44:支持ChromeV69-71(与ChromeDriver 2.43相同,但有额外的错误修复)
    • ChromeDriver v2。43:支持铬v69-71
    • ChromeDriver v2。42:支持铬v68-70
    • ChromeDriver v2。41:支持铬v67-69
    • ChromeDriver v2。40:支持铬v66-68
    • ChromeDriver v2。39:支持铬v66-68
    • ChromeDriver v2。38:支持镀铬v65-67
    • ChromeDriver v2。37:支持Chrome v64-66
    • ChromeDriver v2。36:支持铬v63-65
    • ChromeDriver v2。35:支持Chrome v62-64
    • ChromeDriver v2。34:支持Chrome v61-63
    • ChromeDriver v2。33:支持镀铬v60-62
    • ChromeDriver v2。32:支持Chrome v59-61
    • ChromeDriver v2。31:支持铬v58-60
    • ChromeDriver v2。30:支持铬v58-60
    • ChromeDriver v2。29:支持铬v56-58
    • ChromeDriver v2。28:支持铬v55-57
    • ChromeDriver v2。27:支持铬v54-56

    笔记 :几个月前, Chromium团队 制作了一个 preliminary announcement ChromeDriver的版本控制模型将发生变化。 Chromium团队 正在推进该计划。具体来说,ChromeDriver 2.46将是2的主要版本的最后一个版本。未来的ChromeDriver版本将带有类似于Chrome版本的版本号。下周,我们将开始发布ChromeDriver 73,然后是Chrome73的Beta版。

    以下是新发布模型的工作方式:

    • ChromeDriver将使用与Chrome相同的版本号方案。看见 https://www.chromium.org/developers/version-numbers 了解更多详细信息。
    • ChromeDriver的每个版本都将支持Chrome,并提供匹配的主要、次要和内部版本号。例如,即将推出的ChromeDriver 73.0.3683。*将支持以73.0.3683开头的所有Chrome版本。
    • 在Chrome的新主要版本进入Beta测试之前,将发布ChromeDriver的匹配版本。例如,ChromeDriver的新版本将于下周发布,以匹配ChromeM73的测试版。
    • 在新的主要版本首次发布后,我们将根据需要发布补丁。这些补丁可能与Chrome的更新一致,也可能不一致。

    覆盆子皮ChromeDriver

    当您使用时 树莓皮 您需要下载 格式为 镀铬驱动器 从这个 link 并在程序中使用它。


    其他注意事项

    • 升级 硒元素 达到目前的水平 Version 3.11.0
    • 升级 镀铬驱动器 根据上述讨论。
    • 保持 镀铬 版本位于 铬v56。十、 级别。(根据讨论)
    • 清洁的 你的 工程工作区 通过您的 IDE 重建 您的项目仅具有必需的依赖项。
    • 使用 CCleaner 用于在执行 测试套件
    • 如果你的基地 Web客户端 版本太旧,请通过卸载 Revo Uninstaller 并安装最新的GA和发布版本 Web客户端
    • 采取行动 系统重启
    • 执行您的 @Test