在 Raspberry Pi 4 上使用 Chromedriver 运行 Selenium 时出现问题

baz*_*taz 5 python selenium selenium-chromedriver raspberry-pi4

我想知道是否有人可以帮助我解决我遇到的这个错误。

我想使用 Selenium 来使用 Python 监控(无头)Raspberry Pi 4 上的网页。我已经安装了 Selenium 并安装了需要与Raspberry PI 的AMRHF 配合使用的正确版本的 Chromedriver ;

以下是我正在使用的版本:

chromium-browser:  Chromium 86.0.4240.197
chromedriver: 86.0.4240.197
python 3.7
selenium-3.141.0
Run Code Online (Sandbox Code Playgroud)

这是我的脚本:

from selenium import webdriver
from selenium.webdriver.common.by import By

driver = webdriver.Chrome('/usr/lib/chromium-browser/chromedriver')

driver.get("https://www.google.com")

driver.close()
Run Code Online (Sandbox Code Playgroud)

这是我得到的回溯错误:

Traceback (most recent call last):
  File "test.py", line 4, in <module>
    driver = webdriver.Chrome('/usr/lib/chromium-browser/chromedriver')
  File "/home/pi/.local/lib/python3.7/site-packages/selenium/webdriver/chrome/webdriver.py", line 81, in __init__
    desired_capabilities=desired_capabilities)
  File "/home/pi/.local/lib/python3.7/site-packages/selenium/webdriver/remote/webdriver.py", line 157, in __init__
    self.start_session(capabilities, browser_profile)
  File "/home/pi/.local/lib/python3.7/site-packages/selenium/webdriver/remote/webdriver.py", line 252, in start_session
    response = self.execute(Command.NEW_SESSION, parameters)
  File "/home/pi/.local/lib/python3.7/site-packages/selenium/webdriver/remote/webdriver.py", line 321, in execute
    self.error_handler.check_response(response)
  File "/home/pi/.local/lib/python3.7/site-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.
  (unknown error: DevToolsActivePort file doesn't exist)
  (The process started from chrome location /usr/bin/chromium-browser is no longer running, so ChromeDriver is assuming that Chrome has crashed.)
Run Code Online (Sandbox Code Playgroud)

我花了半天时间尝试不同的事情,但我迷失了。有人可以帮忙吗?谢谢!

Ser*_*ers 6

使用 apt install 安装 chromedriver:

sudo apt install chromium-chromedriver
Run Code Online (Sandbox Code Playgroud)

如果 Chromium 已经安装检查版本,Chromium 和 chromedriver 应该是相同的版本。

使用 pip 安装 Selenium:

pip3 install selenium 
Run Code Online (Sandbox Code Playgroud)

尝试向已安装的 chromedriver 授予权限:

sudo chmod 755 /usr/lib/chromium-browser/chromedriver
Run Code Online (Sandbox Code Playgroud)

带有 Ubuntu 20.04 服务器的树莓派 在此输入图像描述

删除已安装的 Chromium并使用 chromedriver 重新安装:

sudo apt purge --remove chromium-browser -y
sudo apt autoremove && sudo apt autoclean -y
sudo apt install chromium-chromedriver
Run Code Online (Sandbox Code Playgroud)