Selenium: FirefoxProfile exception Can't load the profile

77,425

Solution 1

Update:

Selenium team fixed in latest version. For almost all environments the fix is:

pip install -U selenium

Unclear at which version it was fixed (apparently r13122), but certainly by 2.26.0 (current at time of update) it is fixed.


This error means that _wait_until_connectable is timing out, because for some reason, the code cannot connect to the webdriver extension that has been loaded into the firefox.

I have just reported an error to selenium where I am getting this error because I'm trying to use a proxy and only 2 of the 4 configured changes in the profile have been accepted by firefox, so the proxy isn't configured to talk to the extension. Not sure why this is happening...

https://github.com/seleniumhq/selenium-google-code-issue-archive/issues/2061

Solution 2

I had the same issue after upgrading Ubuntu to 12.04.

The issue was on the package side and has been fixed in the latest version of the library. Just update the selenium library. For almost all Python environments this is:

pip install -U selenium

Solution 3

I faced the same problem with FF 32.0 and Selenium selenium-2.42.1-py2.7.egg. Tried to update selenium, but it is already the latest version. The solution was to downgrade Firefox to version 30. Here is the process:

#Download version 30 for Linux (This is the 64 bit)
wget http://ftp.mozilla.org/pub/mozilla.org/firefox/releases/30.0/linux-x86_64/en-US/firefox-30.0.tar.bz2

tar -xjvf firefox-30.0.tar.bz2
#Remove the old version
sudo rm -rf /opt/firefox*
sudo mv firefox /opt/firefox30.0
#Create a permanent link
sudo ln -sf /opt/firefox30.0/firefox /usr/bin/firefox

This solved all the problems, and this combination works better !

Solution 4

As an extension to Jeff Hoye's answer, a more 'Pythonic' way would be to subclass webdriver.firefox.firefox_profile.FirefoxProfile as follows:

class CygwinFirefoxProfile(FirefoxProfile):
    @property
    def path(self):
        path = self.profile_dir
        # Do stuff to the path as described in Jeff Hoye's answer
        return path

Then, to create your driver:

driver = webdriver.Firefox(firefox_profile=CygwinFirefoxProfile())

Solution 5

If pip install -U selenium doesn't work (it didn't, in my case), try downgrading your Firefox to a previous version.

I had Firefox 49.0 and downgraded to 45.0 to make sure the version is supported by selenium. It worked perfectly then.

Here's a fast way to downgrade to Firefox 45.0:

sudo apt-get install firefox=45.0.2+build1-0ubuntu1

Hope this helps.

Share:
77,425
sultan
Author by

sultan

Areas occupied: Full-stack developer, Consulting, Software development, Business solution developer, Project management Frameworks: Django, Android, Vue, React Programming languages: Python, Elixir, Go, JavaScript I'm in LinkedIn

Updated on September 28, 2020

Comments

  • sultan
    sultan over 3 years

    Per this previous question I updated Selenium to version 2.0.1 But now I have another error, even when the profile files exist under /tmp/webdriver-py-profilecopy:

      File "/home/sultan/Repository/Django/monitor/app/request.py", line 236, in perform
        browser = Firefox(profile)
      File "/usr/local/lib/python2.7/dist-packages/selenium/webdriver/firefox/webdriver.py", line 46, in __init__
        self.binary, timeout),
      File "/usr/local/lib/python2.7/dist-packages/selenium/webdriver/firefox/extension_connection.py", line 46, in __init__
        self.binary.launch_browser(self.profile)
      File "/usr/local/lib/python2.7/dist-packages/selenium/webdriver/firefox/firefox_binary.py", line 44, in launch_browser
        self._wait_until_connectable() 
      File "/usr/local/lib/python2.7/dist-packages/selenium/webdriver/firefox/firefox_binary.py", line 87, in _wait_until_connectable
        raise WebDriverException("Can't load the profile. Profile Dir : %s" % self.profile.path)
    selenium.common.exceptions.WebDriverException: Can't load the profile. Profile Dir : /tmp/webdriver-py-profilecopy
    

    What is wrong? How can I resolve this issue?

  • Abhranil Das
    Abhranil Das almost 11 years
    Adding a sudo is required if not logged in as root. Anyway, this was a lifesaver! Thanks!!
  • Dmitry
    Dmitry over 10 years
    Don't know why, but having selenium 2.28.0 I have same issue with FireFox 22.0 and 23.0 on Ubuntu. Only downgrading firefox to 18.0 works fine for me (never checked other versions).
  • tom joy
    tom joy over 10 years
    Yes it helps to fix WebDriverException: Message: 'Can\'t load the profile.
  • Kos
    Kos over 10 years
    @AbhranilDas You don't need sudo if you're using a virtualenv (which you probably should use).
  • Steve Saporta
    Steve Saporta over 9 years
    At first I was unable to upgrade: pip install -U selenium told me I had the latest version, even though it was 2.25.0. I'm on Ubuntu 14.04. I had to go to the package manager (sudo synaptic) and remove selenium there. Then I had to do sudo pip uninstall selenium followed by sudo pip install selenium. That got me to version 2.42.1.
  • Steve Saporta
    Steve Saporta over 9 years
    Even after I succeeded in installing selenium 2.42.1, the problem persisted. Then I followed user1757247's suggestion to downgrade Firefox to version 30.0, and that solved the problem.
  • pylover
    pylover about 9 years
    I have the exact same problem with 2.44 and ff35 in windows
  • Alex G.P.
    Alex G.P. about 8 years
    No, this solution does not works with Firefox 45.0b and latest Selenium (2.5.1)
  • Rachel
    Rachel about 8 years
    @AlexG.P. I first wrote the answer to this question 4.5 years ago. I suspect that enough time has passed that it might be worth raising a new question. If you do, please include a reference to this question and: a) the Firefox and Selenium versions you gave above; b) your OS; c) your version of pip. I'd guess that your problem might be related to the pip version, because that has changed over the last 5 years.
  • Alex
    Alex about 8 years
    @AlexG.P.: Perhaps this is your problem: github.com/SeleniumHQ/selenium/issues/1300 It was my problem when running on a slow computer (Raspberry Pi).
  • Macumbaomuerte
    Macumbaomuerte over 7 years
    this fixed my setup!!
  • brkr
    brkr over 7 years
    How do I downgrade Firefox on my mac? I using scrapy/selenium on my mactop on 'virtualenv' and having the same error. I think if i downgraded on my mac it would fix it.