Firefox 47.0 official release & Selenium breaking (!) changes

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.

4 Comments


  1. which version of selenium works with firefox 45.2.0. Please help

    Reply

  2. 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.

    Reply

  3. Howdy would you mind letting me know which hosting company you’re utilizing?
    I’ve loaded your blog in 3 completely different internet browsers and I must say this blog loads
    a lot faster then most. Can you recommend a good web hosting provider at a honest price?
    Thanks, I appreciate it!

    Reply

    1. Hi Kill,

      That is probably because I’m not using any hosting company. 😀 I am running my own server at home. I realize this is probably not a practical option for most people and I do it more out of personal interest than anything else. Any time I reboot my computer or lose electricity or internet connectivity, even though that happens sporadically, my sites actually go down. Most hosting providers are not dedicating nearly as much CPU % or memory to an individually hosted sites. However, even though you could self-host your site, assuming your internet connection speed did not become the bottleneck to loading times, the up time of your site will still be lower than if you hosted it through a service that puts your site on a server in a dedicated data center.

      Reply

Leave a Reply

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