Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to put geckodriver into PATH? [duplicate]

I'm on OS Sierra and i'm running Python 3.5.2. I have selenium installed and i'm following a book called "Automate the Boring Tasks With Python"

My code is

from selenium import webdriver
>>> browser = webdriver.Firefox()

I keep receiving the error

Traceback (most recent call last):
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/selenium/webdriver/common/service.py", line 64, in start
stdout=self.log_file, stderr=self.log_file)
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/subprocess.py", line 947, in __init__
restore_signals, start_new_session)
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/subprocess.py", line 1551, in _execute_child
raise child_exception_type(errno_num, err_msg)
FileNotFoundError: [Errno 2] No such file or directory: 'geckodriver'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "<pyshell#1>", line 1, in <module>
browser = webdriver.Firefox()
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/selenium/webdriver/firefox/webdriver.py", line 135, in __init__
self.service.start()
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/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. 

I have searched far and wide for solutions to my issue. Many people have the same issue.. but none of the solutions are working. I have geckodriver copied everywhere in my Python folders. I've tried using terminal and I have tried specifying the path within the code and it still gives me errors. I hope somebody can help me. I'm sorry if this is in the wrong format, I don't know what i'm doing.

like image 341
Matthew Garcia Avatar asked Nov 02 '16 19:11

Matthew Garcia


People also ask

How do you put Geckodriver in path?

Steps to Add a Path in System's PATH Environmental VariableClick on the Environment Variables button. From System Variables select PATH. Click on the Edit button. Paste the path of the GeckoDriver file.

Where is the Geckodriver path in Linux?

Go to the geckodriver releases page . Find the latest version of the driver for your platform and download it. For example: wget https://github.com/mozilla/geckodriver/releases/download/v0.18.0/geckodriver-v0.18.0-linux64.tar.gz. Extract the file with: tar -xvzf geckodriver*


2 Answers

I faced this same problem and here's how I fixed it:

  1. Download the geckodriver from here
  2. Extract and unzip and move the geckodriver file to /usr/local/bin/ directory
  3. Run python program with selenium Firefox webdriver.
like image 127
kiran.koduru Avatar answered Oct 17 '22 22:10

kiran.koduru


You will need to add the binary to your $PATH. You can do this by:

export PATH=$PATH:/path/to/geckodriver
like image 38
ddavison Avatar answered Oct 17 '22 21:10

ddavison