No such file or directory: 'geckodriver' for a Python simple Selenium application

前端 未结 3 658
清歌不尽
清歌不尽 2021-02-11 12:31

I\'m running a simple example of selenium on Linux:

from selenium import webdriver
from selenium.webdriver.common.keys import Keys

driver = webdriver.Firefox()
         


        
相关标签:
3条回答
  • 2021-02-11 13:18

    Selenium requires geckodriver to interface with Firefox. Here's how to install geckodriver:

    1. Download geckodriver from https://github.com/mozilla/geckodriver/releases/download/v0.24.0/geckodriver-v0.24.0-linux64.tar.gz (or if you need the 32 bit version, go to https://github.com/mozilla/geckodriver/releases to see more download options)
    2. Extract the file into your Downloads folder
    3. Open a console and run sudo mv ~/Downloads/geckodriver /usr/bin
    0 讨论(0)
  • 2021-02-11 13:21

    Downloading geckodriver

    The geckodriver executable can be downloaded here.

    Python3 venv

    Download the geckodriver executable from the above link and extract it to env/bin/ to make it accessible to only the virtual environment.

    In your python code, you will now be able to do the following:

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

    Linux

    If you would like to make it available system wide, download the geckodriver executable from the above link and extract it to /usr/bin/ (or anything inside of your $PATH)

    Windows

    Note: this needs a windows user to test and confirm

    Download geckodriver from the above link and extract it to C:\Windows\System32\ (or anything inside your Path environment variable).

    Mac OS X

    Note: I took this from Vincent van Leeuwen's answer in this very question. Putting it here for the sake of lumping everything in one answer

    To make geckodriver available system wide, open up your Terminal App and perform the following command:

    brew install geckodriver

    More Info

    More info on selenium can be found here:

    Selenium requires a driver to interface with the chosen browser. Firefox, for example, requires geckodriver, 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.

    0 讨论(0)
  • 2021-02-11 13:26

    I faced same issue in Linux. I used below steps to fix that Error.

    cd /bin
    
    # Check on https://github.com/mozilla/geckodriver/releases for the latest release
    wget https://github.com/mozilla/geckodriver/releases/download/v0.24.0/geckodriver-v0.24.0-linux32.tar.gz
    tar -xvzf geckodriver-v0.24.0-linux32.tar.gz
    rm geckodriver-v0.24.0-linux32.tar.gz
    chmod +x geckodriver
    export PATH=$PATH:/bin/geckodriver
    
    geckodriver --version
    

    Note : I tried with latest version geckodriver-v0.26.0 but it not working for me, That's Why I installed the old version v0.24.0

    0 讨论(0)
提交回复
热议问题