WebDriverException: сообщение: служба / usr / bin / google-chrome неожиданно завершила работу. Код состояния был: -11 с ChromeDriver Chrome через Selenium Python

Я пытаюсь запустить webdriver в скрипте Python, и когда скрипт пытается запустить Google Chrome, он выходит с кодом состояния 11.

Вот скрипт на Python:

#!/usr/bin/python3
import time
from selenium import webdriver

driver = webdriver.Chrome('/usr/bin/google-chrome')  # Optional argument, if not specified will search path.
driver.get('http://www.google.com/');
time.sleep(5) # Let the user actually see something!
search_box = driver.find_element_by_name('q')
search_box.send_keys('ChromeDriver')
search_box.submit()
time.sleep(5) # Let the user actually see something!
driver.quit()

Вот полный вывод:

[ec2-user@ip-xxx-xx-xx-xxx pythonscrape]$ python3 test-selenium-chrome.py
Traceback (most recent call last):
  File "test-selenium-chrome.py", line 5, in <module>
    driver = webdriver.Chrome('/usr/bin/google-chrome')  # Optional argument, if not specified will search path.
  File "/usr/local/lib/python3.7/site-packages/selenium/webdriver/chrome/webdriver.py", line 73, in __init__
    self.service.start()
  File "/usr/local/lib/python3.7/site-packages/selenium/webdriver/common/service.py", line 98, in start
    self.assert_process_still_running()
  File "/usr/local/lib/python3.7/site-packages/selenium/webdriver/common/service.py", line 111, in assert_process_still_running
    % (self.path, return_code)
selenium.common.exceptions.WebDriverException: Message: Service /usr/bin/google-chrome unexpectedly exited. Status code was: -11

Кто-нибудь знает, почему мой скрипт сообщает код ошибки 11 при попытке запустить google chrome?


person Brent Heigold    schedule 30.01.2020    source источник
comment
Я считаю, что эта строка: driver = webdriver.Chrome ('/ usr / bin / google-chrome') должна быть путем к хромированному драйверу.   -  person pcalkins    schedule 30.01.2020


Ответы (1)


Это сообщение об ошибке ...

selenium.common.exceptions.WebDriverException: Message: Service /usr/bin/google-chrome unexpectedly exited. Status code was: -11

... означает, что ChromeDriver не смог правильно инициировать / создать новый Контекст просмотра, то есть сеанс браузера Chrome.

Кажется, вы были почти у цели. Аргументом по умолчанию для webdriver.Chrome() является абсолютный путь двоичного файла ChromeDriver. Однако согласно рекомендациям вы должны отправить и Key, и Value следующим образом:

driver = webdriver.Chrome(executable_path='/path/to/chromedriver')  # Optional argument, if not specified will search path

Кроме того, если вам нужно передать абсолютный путь двоичного файла Chrome, вы должны использовать свойство binary_location через экземпляр chrome.options следующим образом:

from selenium import webdriver
from selenium.webdriver.chrome.options import Options

options = Options()
options.binary_location = '/path/to/chrome'
driver = webdriver.Chrome(options=options, executable_path='/path/to/chromedriver')
driver.get('http://google.com/')

Ссылка

Вы можете найти подробное обсуждение в:

person DebanjanB    schedule 30.01.2020