Selenium не подключается к веб-драйверу Safari

Во-первых, позвольте мне сказать, что я уже много раз видел этот вопрос, и я прочитал большинство решений, но у меня все еще есть проблемы.

Я использую MacBook (10.15.6) и Safari (13.1.2). Я использую PyCharm 2020.1.4, и у меня есть программа, написанная для python 3.8 с использованием селена 3.14.1, которая подключается к Youtube (на самом деле любой веб-сайт — я также пробовал Google) и отправляет поисковый запрос. Проблема, с которой я постоянно сталкиваюсь, заключается в том, что Selenium не может подключиться к веб-драйверу.

Я выполнил шаги из предыдущих сообщений, чтобы разрешить удаленную автоматизацию на вкладке разработчика, а также вручную запустить драйвер сафари (safaridriver --enable) с экрана терминала.

Я также пробовал аналогичный пример кода подключения для Chrome и получаю аналогичные ошибки.

Вот код, который я запускаю:

from selenium import webdriver

driver = webdriver.Safari()
driver.get('https://youtube.com')
searchbox = driver.find_element_by_xpath('//*[@id="search"]')
searchbox.send_keys('Paint Drying')   

Вот Tracebacklog::

/Users/Fudgey/PycharmProjects/Web_Scrape/venv/bin/python /Users/Fudgey/PycharmProjects/Web_Scrape/web_auto_seln_v0.py
Traceback (most recent call last):
  File "/Users/Fudgey/PycharmProjects/Web_Scrape/web_auto_seln_v0.py", line 3, in <module>
    driver = webdriver.Safari()
  File "/Users/Fudgey/PycharmProjects/Web_Scrape/venv/lib/python3.8/site-packages/selenium/webdriver/safari/webdriver.py", line 56, in __init__
    self.service.start()
  File "/Users/Fudgey/PycharmProjects/Web_Scrape/venv/lib/python3.8/site-packages/selenium/webdriver/common/service.py", line 104, in start
    raise WebDriverException("Can not connect to the Service %s" % self.path)
selenium.common.exceptions.WebDriverException: Message: Can not connect to the Service /usr/bin/safaridriver

person user14289812    schedule 16.09.2020    source источник
comment
Попробуйте прочитать эту ссылку github.com/SeleniumHQ/selenium/issues/5109   -  person Ro0t    schedule 16.09.2020
comment
Эта ссылка подробно описывает шаги, которые я уже предпринял, но я все еще получаю ту же проблему.   -  person user14289812    schedule 18.09.2020
comment
Не уверен, что это поможет, но я попробовал простое задание для драйвера Chrome и получил ту же самую ошибку. Вот код "из драйвера webdriver импорта селена = webdriver.Chrome()"   -  person user14289812    schedule 18.09.2020


Ответы (1)


Чтобы использовать Safari, вам необходимо установить флажок Разрешить удаленную автоматизацию для браузера, для этого выполните следующие действия:

1. Open Safari
2. Go to Safari > Preferences
3. Go to Advanced and in the bottom, there is an option "Show Develop menu in menu bar"
4. Check that option
5. Go to Develop
6. Check on "Allow Remote Automation"
7. Close/Quit the browser

Теперь вы можете безопасно запускать Safari из своего кода.

person Alin Stelian    schedule 17.09.2020
comment
Я пробовал это, и он все еще не подключается к WebDriver. Я пробовал запускать код через PyCharm, а также через IDLE и, наконец, через саму консоль Python. Все выдают одну и ту же ошибку. - person user14289812; 17.09.2020