Проблемы с использованием Chrome Webdriver на Raspberry Pi - PullRequest
0 голосов
/ 05 января 2020

У меня проблемы при использовании Chrome Webdriver в Raspberry Pi. Я скачал и установил сборки браузера, драйвера и кодеков хрома из здесь . (Встроенные файлы расположены внизу страницы)

Я проверил, что пакеты были успешно установлены на устройстве:

$ dpkg -l | grep chromium
ii  chromium-browser                      65.0.3325.181-0ubuntu0.14.04.1        armhf        Chromium web browser, open-source version of Chrome
ii  chromium-chromedriver                 65.0.3325.181-0ubuntu0.14.04.1        armhf        WebDriver driver for the Chromium Browser
ii  chromium-codecs-ffmpeg-extra          65.0.3325.181-0ubuntu0.14.04.1        armhf        Extra ffmpeg codecs for the Chromium Browser
rc  rpi-chromium-mods                     20190613                              armhf        Raspberry Pi-specific mods to Chromium

..., а также проверил, что файлы были установлены в `/ usr / lib / chromium-browser '

$ ls -al /usr/lib/chromium-browser/ | grep chrom
-rw-r--r--  1 root root   813215 Mar 22  2018 chrome_100_percent.pak
-rw-r--r--  1 root root  1083947 Mar 22  2018 chrome_200_percent.pak
-rwxr-xr-x  1 root root  6334180 Mar 23  2018 chromedriver
-r-sr-xr-x  1 root root    13728 Mar 23  2018 chrome-sandbox
-rwxr-xr-x  1 root root 91760672 Mar 23  2018 chromium-browser

Затем я создал selenium-test.py, скрипт, который я пытался выполнить chromedriver.

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

Но когда я запустил script, скрипт только что вызвал «неизвестную ошибку».

$ python3 selenium-test.py
Traceback (most recent call last):
  File "selenium-test.py", line 2, 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
  (Driver info: chromedriver=2.35 (0),platform=Linux 4.19.50-v7+ armv7l)

В чем проблема в этом процессе? Я установил правильные сборки, версия совпадает, и использовал правильный скрипт.

1 Ответ

0 голосов
/ 05 января 2020

Ну, я только что решил эту проблему так быстро ... и отвечаю себе, если кто-то сталкивается с той же проблемой.

Добавление опций при инициализации драйвера делает работу:

from selenium import webdriver

options = webdriver.ChromeOptions()
options.add_argument('--headless')
options.add_argument('--no-sandbox')
options.add_argument('--disable-dev-shm-usage')

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

print('Success')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...