How to set up a Selenium Python environment for Firefox

77,859

Solution 1

As far as I understand, you want to develop in Python, using the Selenium library and work with the Firefox webdriver.

  1. Install Python (Python 3 already contains pip)
  2. Install Selenium (pip install selenium or some IDEs like PyCharm propose to install libraries, just import Selenium)
  3. Download Mozilla webdriver
  4. Enjoy!

Solution 2

The testing machine should have Selenium v. 3.0.2, Firefox v. 51.0.1 (latest version) and geckodriver v. 0.14. If you are using Linux, please do the following steps:

[Look up the latest release on GitHub (or from the API) and replace the wget link with that. Downloading and installing an outdating release may result in "buggy" behaviour.]

apt-get update
apt-get install firefox
pip3 install selenium==3.0.2
wget https://github.com/mozilla/geckodriver/releases/download/vX.XX.0/geckodriver-vX.XX.0-linuxXX.tar.gz -O /tmp/geckodriver.tar.gz \
  && tar -C /opt -xzf /tmp/geckodriver.tar.gz \
  && chmod 755 /opt/geckodriver \
  && ln -fs /opt/geckodriver /usr/bin/geckodriver \
  && ln -fs /opt/geckodriver /usr/local/bin/geckodriver

Select the version for your operating system from the available compressed pre-built binaries.

Here is an example to run:

from selenium import webdriver
driver = webdriver.Firefox()
driver.get('http://google.com')
print(driver.title)
driver.quit()

Solution 3

  1. In Windows install Python from: https://www.python.org/downloads/

  2. Then run pip install from the command line: pip install selenium

  3. Download the Gecko/Chrome/Internet Explorer driver and add the driver.exe path to the PATH environment variable. So the need to set up the path while running Selenium driver.Firefox() / driver.Chrome() method.

Share:
77,859
jaibalaji
Author by

jaibalaji

Updated on February 27, 2021

Comments

  • jaibalaji
    jaibalaji about 3 years

    How can I set up a Selenium Python environment for Firefox?

    I am using Firefox 50, Selenium 3, Python 3.5. I tried with many things binary and copying the geckodriver in the environment variable PATH, etc.