Firefox 47.0 was officially released yesterday. I usually wouldn’t comment too much on a browser version release, but this costed me several hours of thorough investigation. Some Selenium scripts written in python which I have been using regularly abruptly stopped working, and given the number of interactions between python 3.x, Firefox, and one’s setup and environment, I did not come to think initially that this was the source of the problem.

➜  thePlatform python get-auth-token.py      
Traceback (most recent call last):
  File "get-auth-token.py", line 6, in 
    driver = webdriver.Firefox()
  File "/usr/lib/python3.5/site-packages/selenium/webdriver/firefox/webdriver.py", line 81, in __init__
    self.binary, timeout)
  File "/usr/lib/python3.5/site-packages/selenium/webdriver/firefox/extension_connection.py", line 51, in __init__
    self.binary.launch_browser(self.profile, timeout=timeout)
  File "/usr/lib/python3.5/site-packages/selenium/webdriver/firefox/firefox_binary.py", line 68, in launch_browser
    self._wait_until_connectable(timeout=timeout)
  File "/usr/lib/python3.5/site-packages/selenium/webdriver/firefox/firefox_binary.py", line 98, in _wait_until_connectable
    raise WebDriverException("The browser appears to have exited "
selenium.common.exceptions.WebDriverException: Message: The browser appears to have exited before we could connect. If you specified a log_file in the FirefoxBinary constructor, check it for details.

A useless message. I downgraded to the “firefox-esr” (45.2.0-1) version available in the AUR, and my scripts worked perfectly again. For those not using Arch Linux, one can always downloaded past released versions from Mozilla’s website. Simply go to all Firefox downloads for your desired language/locale, but instead of clicking on the download link for your platform, copy the download location instead; simply change the version of 47.0 to 45.0 and you’ll have a Selenium-compatible version of Firefox once again. 🙂

Note that it is entirely possible to have multiple instances of Firefox installed on one’s machine.

3 Replies to “Firefox 47.0 official release & Selenium breaking (!) changes”

  1. Hi tanu,

    I am using python3.5 with this configuration and installed selenium with pip as follows:

    ➜  sudo pip3 install selenium           
    Collecting selenium
      Downloading selenium-2.53.5-py2.py3-none-any.whl (884kB)
        100% |████████████████████████████████| 890kB 1.8MB/s 
    Installing collected packages: selenium
    Successfully installed selenium-2.53.5
    

    So it looks like the version of selenium is 2.53.5. I hope that helps. Let me know if you are still experiencing issues.

Leave a Reply

Your email address will not be published. Required fields are marked *