Недавно я обновил свою малину 3 до Debian Buster из Stretch. У меня было несколько скриптов на Python, использующих splinter, selenium и chromedriver. После обновления скрипт не работает. Пытаясь устранить неполадки, я создал простой скрипт, который работает так, как ожидалось:
from selenium import webdriver
from splinter import Browser
chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument("--headless")
driver = webdriver.Chrome(options=chrome_options)
driver.get('https://python.org')
html = driver.page_source
print(html)
driver.quit()
Немного изменив скрипт, чтобы использовать splinter:
from selenium import webdriver
from splinter import Browser
chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument("--headless")
with Browser('chrome', headless=True, options=chrome_options) as browser:
browser.visit('https://python.org')
print(browser.html)
дает:
Traceback (most recent call last):
File "sel.py", line 8, in <module>
print(browser.html)
File "/usr/local/lib/python3.7/dist-packages/splinter/driver/webdriver/__init__.py", line 201, in html
return self.driver.page_source
File "/usr/local/lib/python3.7/dist-packages/selenium/webdriver/remote/webdriver.py", line 679, in page_source
return self.execute(Command.GET_PAGE_SOURCE)['value']
File "/usr/local/lib/python3.7/dist-packages/selenium/webdriver/remote/webdriver.py", line 321, in execute
self.error_handler.check_response(response)
File "/usr/local/lib/python3.7/dist-packages/selenium/webdriver/remote/errorhandler.py", line 242, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.WebDriverException: Message: chrome not reachable
(Session info: headless chrome=74.0.3729.157)
(Driver info: chromedriver=74.0.3729.157 (7b16107ab85c5364cdcd0b2dea2539a1f2dc327a-refs/branch-heads/3729@{#998}),platform=Linux 4.19.66-v7+ armv7l)
Вот дополнительная информация:
pip3 list |egrep "splinter|selenium"
selenium 3.141.0
splinter 0.11.0
apt-show-versions chromium-browser chromium-chromedriver python3
chromium-browser:armhf/buster 74.0.3729.157-rpt5 uptodate
chromium-chromedriver:armhf/buster 74.0.3729.157-rpt5 uptodate
python3:armhf/buster 3.7.3-1 uptodate
ls -l `which chromedriver`
-rwxr-xr-x 1 root root 10870000 Jul 10 08:27 /usr/bin/chromedriver
chromedriver --version
ChromeDriver 74.0.3729.157 (7b16107ab85c5364cdcd0b2dea2539a1f2dc327a-refs/branch-heads/3729@{#998})
Что должно произойти, чтобы сплинтер снова заработал?