Селен із використанням виконуваного файлу Python - Geckodriver повинен бути в PATH


435

Я новачок у програмуванні і розпочав Pythonблизько 2 місяців тому, і я переїжджаю над Автоматизацією нудних речей з текстом Python від Sweigart . Я використовую IDLE і вже встановив модуль селену та браузер Firefox. Щоразу, коли я намагався запустити функцію webdriver, я отримую таке:

from selenium import webdriver
browser = webdriver.Firefox()

Виняток: -

Exception ignored in: <bound method Service.__del__ of <selenium.webdriver.firefox.service.Service object at 0x00000249C0DA1080>>
Traceback (most recent call last):
  File "C:\Python\Python35\lib\site-packages\selenium\webdriver\common\service.py", line 163, in __del__
    self.stop()
  File "C:\Python\Python35\lib\site-packages\selenium\webdriver\common\service.py", line 135, in stop
    if self.process is None:
AttributeError: 'Service' object has no attribute 'process'
Exception ignored in: <bound method Service.__del__ of <selenium.webdriver.firefox.service.Service object at 0x00000249C0E08128>>
Traceback (most recent call last):
  File "C:\Python\Python35\lib\site-packages\selenium\webdriver\common\service.py", line 163, in __del__
    self.stop()
  File "C:\Python\Python35\lib\site-packages\selenium\webdriver\common\service.py", line 135, in stop
    if self.process is None:
AttributeError: 'Service' object has no attribute 'process'
Traceback (most recent call last):
  File "C:\Python\Python35\lib\site-packages\selenium\webdriver\common\service.py", line 64, in start
    stdout=self.log_file, stderr=self.log_file)
  File "C:\Python\Python35\lib\subprocess.py", line 947, in __init__
    restore_signals, start_new_session)
  File "C:\Python\Python35\lib\subprocess.py", line 1224, in _execute_child
    startupinfo)
FileNotFoundError: [WinError 2] The system cannot find the file specified

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "<pyshell#11>", line 1, in <module>
    browser = webdriver.Firefox()
  File "C:\Python\Python35\lib\site-packages\selenium\webdriver\firefox\webdriver.py", line 135, in __init__
    self.service.start()
  File "C:\Python\Python35\lib\site-packages\selenium\webdriver\common\service.py", line 71, in start
    os.path.basename(self.path), self.start_error_message)
selenium.common.exceptions.WebDriverException: Message: 'geckodriver' executable needs to be in PATH. 

Я думаю, що мені потрібно встановити шлях, geckodriverале не впевнений, яким чином, тому хтось може сказати мені, як би я це зробив?


2
Будь ласка, дивіться мою відповідь на подібне запитання тут
Андрій

Я кладу geckodriver.exe в каталог Python / Python35, щоб він мав той самий шлях, і у мене виникають ще більше проблем.
tadm123

80
На Mac:brew install geckodriver
Nostalg.io

1
Я виявив, що запустити його через браузер Chrome трохи швидше, ніж на Firefox, вам просто доведеться завантажити chromedriverдля цього.
tadm123

Примітка: є Testcafe, який нещодавно відкрився. Для цього не потрібні додаткові модулі браузера, вони вбудовані. Я хотів використати Селен, але це виглядає як цікава альтернатива.
Переконайтеся

Відповіді:


355

selenium.common.exceptions.WebDriverException: Повідомлення: виконуваний файл geckodriver повинен бути в PATH.

Перш за все вам потрібно буде завантажити тут найсвіжіший виконуваний geckodriver, щоб запустити останню Firefox за допомогою селену

Насправді прив'язки клієнта Selenium намагаються знайти geckodriverвиконавчий файл із системи PATH. Вам потрібно буде додати каталог, який містить виконуваний файл, до системного шляху.

  • У системах Unix ви можете зробити наступне, щоб додати його до шляху пошуку вашої системи, якщо ви використовуєте bash-сумісну оболонку:

    export PATH=$PATH:/path/to/directory/of/executable/downloaded/in/previous/step
  • У Windows вам потрібно буде оновити змінну системи Path, щоб додати повний шлях до каталогу до виконуваного geckodriver вручну або в командному рядку (не забудьте перезапустити систему після додавання виконуваного geckodriver в систему PATH, щоб набути чинності) . Принцип такий же, як і в Unix.

Тепер ви можете запустити свій код так само, як і раніше: -

from selenium import webdriver

browser = webdriver.Firefox()

selenium.common.exceptions.WebDriverException: Повідомлення: Очікуване бінарне розташування браузера, але не вдалося знайти бінарне місце у стандартному розташуванні, не передбачено можливості 'moz: firefoxOptions.binary', а в командному рядку не встановлено бінарний прапор

Виняток чітко стверджує, що ви встановили Firefox в іншому місці, поки Selenium намагається знайти firefox і запустити з місця за замовчуванням, але його не вдалося знайти. Вам потрібно вказати бінарне місце, встановлене Firefox, щоб запустити firefox, як показано нижче: -

from selenium import webdriver
from selenium.webdriver.firefox.firefox_binary import FirefoxBinary

binary = FirefoxBinary('path/to/installed firefox binary')
browser = webdriver.Firefox(firefox_binary=binary)

8
Дякую, але я встановив своє geckodriver.exeна C:\Python\Python35\seleniumкаталог, і я встановив шлях, як ви описали, але це дає мені помилку нижче:
tadm123

4
Дякую @Saurabh Gaur, він працює зараз. Я додав шлях Firefox до системних змінних вручну, і це все працює. Для запуску потрібно трохи часу, але я здогадуюсь, що це нормально. Дякую!
tadm123

3
Я отримав помилку "WebDriverException: Повідомлення: Не вдалося запустити браузер: дозвіл відхилено" спочатку, коли я почав вказувати бінарний шлях до firefox, але перезапуск комп'ютера (Windows 10) вирішив проблему. - На всякий випадок, якщо хтось інший потрапить на ту ж проблему, що і я.
NoSuchElephantException

3
Що таке двійкове? Це означає виконуваний файл?
Користувач

12
На додаток до цієї відповіді, я хотів би розширити питання про налаштування середовища PATHв unix. Ви можете встановити його в коді, оскільки він вам не потрібен у всій системі: os.environ["PATH"] += os.pathsep + 'path/to/dir/containing/geckodriver/' Або просто збережіть двійковий код geckodriver у тому каталозі, який вже є на вашому шляху:mv geckodriver /usr/local/bin
dsalaj

161

Це вирішило це для мене.

from selenium import webdriver
driver = webdriver.Firefox(executable_path=r'your\path\geckodriver.exe')
driver.get('http://inventwithpython.com')

Якщо ви отримали неправильний дозвіл, спробуйте видалити [r '] зі шляху просто "excecutable_path =' шлях \ до \ ваш'діректорій" "
Дарій

@adityarawat на якій операційній системі ти працюєш?
Неса

але тепер я отримую OSError замість неправильних дозволів. Мені якось вдалося скопіювати geckodriver в / usr / local / bin. але тепер ця нова помилка вбиває мене
aditya rawat

@adityarawat ви можете завантажити geckodriver самостійно звідси: github.com/mozilla/geckodriver/ випускає його з дьогтем і зробить його виконуваним з chmod + x, він не повинен бути в / usr / local / bin, просто у вас є щоб вказати свій шлях до нього
Неса

просто, щоб було зрозуміло, я завантажив файл arm7hf.tar, а також вилучив його і додав до шляху за допомогою команди export PATH=$PATH:geckodriver(він витягується в Desktop). Але це теж не допомогло. Я все ще отримую OSError [errno 8]
aditya rawat

121

ці кроки вирішені для мене на ubuntu firefox 50.

  1. Завантажити geckodriver

  2. Скопіюйте geckodriver в / usr / local / bin

НЕ потрібно додавати

firefox_capabilities = DesiredCapabilities.FIREFOX
firefox_capabilities['marionette'] = True
firefox_capabilities['binary'] = '/usr/bin/firefox'
browser = webdriver.Firefox(capabilities=firefox_capabilities)

У свій код ви не можете додати змінну можливостей
Andrea Perdicchia

Чи траплялося б вам знати, як встановити каталог завантажень для Firefox? Я додав наступне питання Встановити налаштування Firefox . Будь-яка допомога буде дуже вдячна.
d84_n1nj4

У Debian або Ubuntu ви повинні використовувати команду apt для встановлення Firefox. Для Windows я поняття не шкодую
Андреа Пердікхія

Дякую. Після застосування цієї відповіді, я також прийняв це рішення для обробки з наступним питанням: stackoverflow.com/questions/43713445 / ...
HackNone

Дякую, Pycharm не знайшов geckodriver, хоча він знаходився вдома та в самій папці проекту, але після переміщення його до / usr / local / bin він спрацював ідеально
Рональд Дас

32

Відповідь @saurabh вирішує проблему, але не пояснює, чому Автоматизація нудних речей з Python не включає ці кроки.

Це викликано тим, що книга базується на selenium 2.x, а драйвер Firefox для цієї серії не потребує драйвера gecko. Інтерфейс Gecko для керування браузером був недоступний при розробці селену.

Остання версія в серії 2.x селеном є 2.53.6 (див , наприклад , ці відповіді , для полегшення зору версій).

Сторінка 2.53.6 версії немає згадки гекона взагалі. Але оскільки версія 3.0.2 в документації прямо вказано, що вам потрібно встановити драйвер gecko.

Якщо після оновлення (або встановлення на новій системі) ваше програмне забезпечення, яке добре працювало раніше (або у вашій старій системі), більше не працює, і ви поспішаєте, зафіксуйте версію селену у вашому virtualenv, зробивши

pip install selenium==2.53.6

але звичайно довготерміновим рішенням для розробки є встановлення нового virtualenv з останньою версією селену, встановлення драйвера gecko і тестування, чи все ще працює так, як очікувалося. Але основна помилка версії може внести інші зміни API, які не охоплені вашою книгою, тому ви, можливо, захочете дотримуватися старішого селену, поки ви не будете досить впевнені, що зможете самостійно виправити будь-які розбіжності між API selelen2 та selenium3.


2
Я б хотів, щоб це була найкраща відповідь
sudo-nim

1
це допомогло мені, дякую
Ентону

24

На macOS з уже встановленим Homebrew ви можете просто запустити команду Terminal

$ brew install geckodriver

Оскільки домашнє письмо вже було розширено PATH, не потрібно змінювати будь-які сценарії запуску.


@roskakori я зробив це , і він був успішно встановлений , але до сих пір я отримую ту ж помилку
Jkc

Це зробило це для мене, дякую. Використання Firefox 72.0.2 & Селен 3.141.0
Sam

17

Щоб налаштувати geckodriver для Selenium Python:

Для цього потрібно встановити шлях geckodriver за допомогою FirefoxDriver, як показано нижче:

self.driver = webdriver.Firefox(executable_path = 'D:\Selenium_RiponAlWasim\geckodriver-v0.18.0-win64\geckodriver.exe')

Завантажте geckodriver для відповідної ОС (з https://github.com/mozilla/geckodriver/releases ) -> Витягніть її у вибрану вами папку -> Встановіть шлях правильно, як зазначено вище

Я використовую Python 3.6.2 та Selenium WebDriver 3.4.3 в Windows 10.

Ще один спосіб налаштування geckodriver:

i) Просто вставте geckodriver.exe в / Python / Scripts / (У моєму випадку папка була: C: \ Python36 \ Scripts)
ii) Тепер запишіть простий код, як показано нижче:

self.driver = webdriver.Firefox()

17

Якщо ви використовуєте Anaconda , все, що вам потрібно зробити, це активувати віртуальне середовище, а потім встановити geckodriver за допомогою наступної команди :

    conda install -c conda-forge geckodriver

Так, він встановлює geckodriver, але помилка pycharm залишається такою ж.
WebComer

Привіт, я спробував багато речей, і це єдине, що працювало на мене :-) дякую
tezzaaa

12

Ubuntu 18.04 і новіший випуск geckodriver

Це також повинно працювати і для інших сортів * nix.

export GV=v0.26.0
wget "https://github.com/mozilla/geckodriver/releases/download/$GV/geckodriver-$GV-linux64.tar.gz"
tar xvzf geckodriver-$GV-linux64.tar.gz 
chmod +x geckodriver
sudo cp geckodriver /usr/local/bin/

Для оновлення Mac на:

geckodriver-$GV-macos.tar.gz

12

Я бачу, як дискусії все ще говорять про старий спосіб налаштування geckodriver, завантаживши двійковий файл і налаштувавши шлях вручну.

Це можна зробити автоматично, використовуючи webdriver-менеджер

pip install webdriver-manager

Тепер вищезазначений код у запитанні буде працювати просто із наступною зміною,

from selenium import webdriver
from webdriver_manager.firefox import GeckoDriverManager

driver = webdriver.Firefox(executable_path=GeckoDriverManager().install())

2
Це працювало для мене. Дякую!
igorkf

Чи має Safari чи навіть Internet Explorer подібний менеджер драйверів?
Mischief_Monkey

11

Найпростіший спосіб для вікон!
Завантажте останню версію geckodriverвід сюди . Додайте файл geckodriver.exe до каталогу python (або будь-який інший каталог, який вже є PATH). Це повинно вирішити проблему (випробувано на Windows 10)


Хіба не найгірше вікна. Дякуємо за швидке рішення.
AJ_

Це, безумовно, найпростіше рішення !! Не потрібно навіть перезавантажувати комп’ютер!
olenscki

8

Кроки для MAC:

Просте рішення - завантажити GeckoDriver і додати його до вашої системи PATH. Ви можете використовувати будь-який з двох підходів:

Короткий метод:

1) Завантажте та розпакуйте Geckodriver .

2) Згадайте шлях під час ініціювання драйвера:

driver = webdriver.Firefox(executable_path='/your/path/to/geckodriver')

Довгий метод:

1) Завантажте та розпакуйте Geckodriver .

2) Відкрити .bash_profile. Якщо ви ще не створили його, то ви можете зробити це з допомогою команди: touch ~/.bash_profile. Потім відкрийте його, використовуючи:open ~/.bash_profile

3) Враховуючи, що файл GeckoDriver присутній у вашій папці "Завантаження", ви можете додати у .bash_profileфайл такі рядки :

PATH="/Users/<your-name>/Downloads/geckodriver:$PATH"
export PATH

Цим ви додаєте шлях до GeckoDriver до вашої системної PATH. Це повідомляє системі, де знаходиться GeckoDriver під час виконання сценаріїв Selenium.

4) Збережіть .bash_profileі змусьте його виконати. Це завантажує значення негайно, не потребуючи перезавантаження. Для цього можна виконати таку команду:

source ~/.bash_profile

5) Це все. Ви зробили! Ви можете запустити сценарій Python зараз.


1
Мені вдалося завантажити geckodriverз Homebrew: brew install geckodriverа потім ініціювати Firefox через:driver = webdriver.Firefox(executable_path="/usr/local/bin/geckodriver")
Winterflags

7

Деякі додаткові введення / уточнення для майбутніх читачів цієї теми:

Далі достатньо роздільної здатності для Windows 7, Python 3.6, селен 3.11:

@ примітка dsalaj у цій темі для Unix раніше застосовується і до Windows; майстерність PATH env. змінної на рівні Windows та перезапуску системи Windows можна уникнути.

(1) Завантажте geckodriver (як описано в цій темі раніше) та помістіть (unzipped) geckdriver.exe на X: \ Folder \ of \ your \ choice

(2) Зразок коду Python:

import os;
os.environ["PATH"] += os.pathsep + r'X:\Folder\of\your\choice';

from selenium import webdriver;
browser = webdriver.Firefox();
browser.get('http://localhost:8000')
assert 'Django' in browser.title

Примітки: (1) Щоб вищезазначений код запустив браузер Firefox для вказаної URL-адреси, може знадобитися приблизно 10 секунд.
(2) На консолі python буде показана наступна помилка, якщо немає жодного сервера, який вже працює за вказаною URL-адресою або обслуговує сторінку з заголовком, що містить рядок 'Django': selenium.common.exceptions.WebDriverException: Повідомлення: Сторінка помилки, що надійшла: про : neterror? e = connectionFailure & u = http% 3A // localhost% 3A8000 / & c = UTF-8 & f = regular & d = Firefox% 20can% E2% 80% 9


Дякую, я спробував усі інші рішення, але тільки ваше працювало на моїх Windows!
псо

4

Я фактично виявив, що ви можете використовувати найновіший geckodriver, виклавши його в системний шлях. В даний час я використовую

https://github.com/mozilla/geckodriver/releases/download/v0.12.0/geckodriver-v0.12.0-win64.zip

Firefox 50.1.0

Пітон 3.5.2

Селен 3.0.2

Windows 10

Я запускаю VirtualEnv (яким я керую за допомогою PyCharm, я припускаю, що він використовує Pip для встановлення всього)

У наведеному нижче коді я можу використовувати певний шлях для geckodriver за допомогою параметра paravableter Executable_path (я виявив це, заглянувши в Lib \ site-пакети \ selenium \ webdriver \ firefox \ webdriver.py). Примітка: У мене є підозра, що порядок аргументів параметрів під час виклику веб-драйвера є важливим, саме тому Executable_path останній у моєму коді (другий останній рядок від крайнього правого краю)

Ви також можете помітити, що я використовую спеціальний профіль Firefox, щоб вирішити проблему sec_error_unknown_issuer, з якою ви зіткнетесь, якщо сайт, який ви тестуєте, має ненадійний сертифікат. див. Як відключити попередження про ненадійне підключення Firefox за допомогою Selenium?

Після розслідування було встановлено, що драйвер Marionette неповний і все ще працює, і жодна кількість налаштування різних можливостей або параметрів профілю для звільнення або встановлення сертифікатів не буде працювати. Тож було просто простіше користуватися спеціальним профілем.

У всякому разі, ось код про те, як я змусив geckodriver працювати, не будучи на шляху:

from selenium import webdriver
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities

firefox_capabilities = DesiredCapabilities.FIREFOX
firefox_capabilities['marionette'] = True

#you probably don't need the next 3 lines they don't seem to work anyway
firefox_capabilities['handleAlerts'] = True
firefox_capabilities['acceptSslCerts'] = True
firefox_capabilities['acceptInsecureCerts'] = True

#In the next line I'm using a specific FireFox profile because
# I wanted to get around the sec_error_unknown_issuer problems with the new Firefox and Marionette driver
# I create a FireFox profile where I had already made an exception for the site I'm testing
# see https://support.mozilla.org/en-US/kb/profile-manager-create-and-remove-firefox-profiles#w_starting-the-profile-manager

ffProfilePath = 'D:\Work\PyTestFramework\FirefoxSeleniumProfile'
profile = webdriver.FirefoxProfile(profile_directory=ffProfilePath)
geckoPath = 'D:\Work\PyTestFramework\geckodriver.exe'
browser = webdriver.Firefox(firefox_profile=profile, capabilities=firefox_capabilities, executable_path=geckoPath)
browser.get('http://stackoverflow.com')

Я отримав SyntaxError: (помилка unicode) 'unicodeescape' кодек не може розшифрувати байти ... І я повинен змінити шлях gecko на epath = r'C: \ Users \ step_ \ Documents \ mtg_buyer \ geckodrivers \ geckodriver.exe '. Можливо, причина в тому, що я використовую китайський Windows 10?
Endle_Zhenbo

3

Я використовую Windows 10, і це працювало для мене:

  1. Завантажте geckodriver звідси . Завантажте правильну версію для комп’ютера, який ви використовуєте
  2. Розпакуйте файл, який ви тільки що завантажили, і виріжте / скопіюйте файл ".exe", який він містить
  3. Перейдіть до C: {Ваша коренева папка python}. Моя була С: \ Python27. Вставте файл geckodriver.exe в цю папку.
  4. Перезавантажте ваше середовище розробки.
  5. Спробуйте запустити код ще раз, він повинен працювати зараз.

Дякуємо, що зазначили, що вам потрібно перезапустити середовище розробки.
Глибокий

3

Подумайте про встановлення контейнерного Firefox:

docker pull selenium/standalone-firefox
docker run --rm -d -p 5555:4444 --shm-size=2g selenium/standalone-firefox

Підключення за допомогою webdriver.Remote:

driver = webdriver.Remote('http://localhost:5555/wd/hub', DesiredCapabilities.FIREFOX)
driver.set_window_size(1280, 1024)
driver.get('https://toolbox.googleapps.com/apps/browserinfo/')
driver.save_screenshot('info.png')

2

Дійсно сумно, що жодна з книг, опублікованих на Selenium / Python, і більшість коментарів до цього питання через Google не чітко пояснюють логіку шляху для налаштування цього на Mac (все - це Windows !!!!). Youtubes весь пікап на "після" у вас є налаштування шляху (на мій погляд, дешевий вихід!). Тож для ваших чудових користувачів Mac використовуйте наступне для редагування файлів bash path:

> $ touch ~ / .bash_profile; відкрити ~ / .bash_profile

Потім додайте шлях таким чином .... * # Встановлення PATH для geckodriver PATH = "/ usr / bin / geckodriver: $ {PATH}" експортувати PATH

Налаштування PATH для селену firefox

PATH = “~ / Користувачі / yourNamePATH / VEnvPythonInterpreter / lib / python2.7 / пакунки для сайтів / селен / webdriver / firefox /: $ {PATH}” експортувати PATH

Налаштування PATH для виконання у драйвері Firefox

PATH = “/ Користувачі / ваше ім’яPATH / VEnvPythonInterpreter / lib / python2.7 / пакунки для сайтів / селен / webdriver / common / service.py: $ {PATH}” експортувати PATH *

Це працювало для мене. Я хвилююсь, коли громада Selenium Windows почне грати у справжню гру та включить нас користувачів Mac у своє зарозуміле членство в клубі.


2

Селен відповідає на це питання у своїй DESCRIPTION.rst

Drivers
=======

Selenium requires a driver to interface with the chosen browser. Firefox,
for example, requires `geckodriver <https://github.com/mozilla/geckodriver/releases>`_, which needs to be installed before the below examples can be run. Make sure it's in your `PATH`, e. g., place it in `/usr/bin` or `/usr/local/bin`.

Failure to observe this step will give you an error `selenium.common.exceptions.WebDriverException: Message: 'geckodriver' executable needs to be in PATH.

В основному просто завантажте geckodriver, розпакуйте його та перемістіть виконуваний файл у папку / usr / bin


Ця цитата містить вказівки, які працювали на монетному дворі Linux 18.
Елліот Роберт

2

Для користувачів Windows

використовувати оригінальний код так:

from selenium import webdriver
browser = webdriver.Firefox()
driver.get("https://www.google.com")

потім завантажте драйвер з: mozilla / geckodriver

Помістіть його у фіксований шлях (назавжди). Як приклад, я розміщую його:

C: \ Python35

Потім перейдіть до змінних оточення системи, в сітці "Змінні системи" знайдіть змінну Path і додайте:

; C: \ Python35 \ geckodriver

geckodriver, а не geckodriver.exe .


geckodriver, а не geckodriver.exe.
Saurabh Chandra Patel

1

На Raspberry Pi мені довелося створити з драйвера ARM і встановити шлях geckodriver та log у:

sudo nano /usr/local/lib/python2.7/dist-packages/selenium/webdriver/firefox/webdriver.py

def __init__(self, firefox_profile=None, firefox_binary=None,
             timeout=30, capabilities=None, proxy=None,
             executable_path="/PATH/gecko/geckodriver",                     
firefox_options=None,
             log_path="/PATH/geckodriver.log"):

1

Якщо ви використовуєте віртуальне середовище та win10 (можливо, це стосується інших систем), вам просто потрібно помістити geckodriver.exe у таку папку у вашому каталозі віртуального середовища:

... \ my_virtual_env_directory \ Scripts \ geckodriver.exe


1
from webdriverdownloader import GeckoDriverDownloader # vs ChromeDriverDownloader vs OperaChromiumDriverDownloader
gdd = GeckoDriverDownloader()
gdd.download_and_install()
#gdd.download_and_install("v0.19.0")

це допоможе вам отримати шлях до вашого gekodriver.exe на Windows

from selenium import webdriver
driver = webdriver.Firefox(executable_path=r'C:\\Users\\username\\\bin\\geckodriver.exe')
driver.get('https://www.amazon.com/')

0

Mac 10.12.1 python 2.7.10 ця робота для мене :)

def download(url):
firefox_capabilities = DesiredCapabilities.FIREFOX
firefox_capabilities['marionette'] = True
browser = webdriver.Firefox(capabilities=firefox_capabilities,
                            executable_path=r'/Users/Do01/Documents/crawler-env/geckodriver')
browser.get(url)
return browser.page_source

0

Я використовую Windows 10 та Anaconda2. Я спробував встановити змінну системного шляху, але нічого не вийшло. Тоді я просто додав файл geckodriver.exe в папку Anaconda2 / Scripts і зараз все працює чудово. Для мене шлях був:

C: \ Користувачі \ Bhavya \ Anaconda2 \ Сценарії


0

Якщо ви хочете додати шляхи до драйверів у Windows 10:

  1. Клацніть правою кнопкою миші на піктограмі "Цей ПК" та виберіть "Властивості" введіть тут опис зображення

  2. Натисніть «Розширені налаштування системи»

  3. Клацніть на "Змінні середовища" в нижній частині екрана
  4. У розділі "Змінні користувача" виділіть "Шлях" та натисніть "Змінити"
  5. Додайте шляхи до змінних, натиснувши «Створити» та ввівши шлях до драйвера, якого ви додаєте та натиснувши клавішу «Ввести».
  6. Після того як ви ввели шлях, натисніть «ОК»
  7. Продовжуйте клацати "OK", поки ви не закриєте всі екрани


0
  1. переконайтеся, що у вас є правильна версія драйвера (geckodriver), x86 або 64.
  2. переконайтеся, що ви перевіряєте правильне середовище, наприклад, робота виконується в Docker, тоді як середовище перевірено - це хост ОС

0

для мене досить було просто встановити geckodriver в тому ж середовищі:

$ brew install geckodriver

і код не змінено:

from selenium import webdriver
browser = webdriver.Firefox()

0

Щоб додати мої 5 копійок, можна також зробити echo PATH(Linux) і просто перемістити geckodriver в папку, яка вам подобається. Якщо папкою системи (а не віртуального середовища) є ціль, драйвер стає глобально доступним.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.