Как справиться с ошибкой установки selenium и geckodriver?
Я выполнил следующий код, установив selenium
и django
модуль.
from selenium import webdriver
browser = webdriver.Firefox()
browser.get('http://localhost:8000')
assert 'Django' in browser.title
Для модуля selenium
мне нужен geckodriver
для браузера firefox.
Итак, я установил geckodriver разными способами - 1. npm, 2. brew, 3. direct install (скачать с здесь и переместить его в /usr/local/bin
или /usr/bin
. Все способы не сработали для приведенного выше тестового кода.
Я получил следующее сообщение об ошибке:
Traceback (most recent call last):
File "functional_tests.py", line 3, in <module>
browser.get('http://localhost:8000')
File "/Users/kiyeonj/opt/anaconda3/envs/tdd_practice/lib/python3.8/site-packages/selenium/webdriver/remote/webdriver.py", line 333, in get
self.execute(Command.GET, {'url': url})
File "/Users/kiyeonj/opt/anaconda3/envs/tdd_practice/lib/python3.8/site-packages/selenium/webdriver/remote/webdriver.py", line 321, in execute
self.error_handler.check_response(response)
File "/Users/kiyeonj/opt/anaconda3/envs/tdd_practice/lib/python3.8/site-packages/selenium/webdriver/remote/errorhandler.py", line 242, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.WebDriverException: Message: Reached error page: about:neterror?e=connectionFailure&u=http%3A//localhost%3A8000/&c=UTF-8&d=Firefox%20can%E2%80%99t%20establish%20a%20connection%20to%20the%20server%20at%20localhost%3A8000.
Пожалуйста, сообщите мне, в чем проблема...
Думаю, вам также нужен драйвер gecko.
Вы можете скачать с здесь
и поместите его в папку, предпочтительно туда, где у вас есть ваши .py files
и затем использовать его следующим образом :-
from selenium import webdriver
driver = webdriver.Firefox(executable_path = "D:\geckodriver.exe")
driver.maximize_window()
browser.get('http://localhost:8000')
assert 'Django' in browser.title
PS :
executable_path = 'full file path to your gecko driver'