Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to fix Selenium WebDriverException: The browser appears to have exited before we could connect?

I have installed firefox and Xvfb on my centos6.4 server to use selenium webdriver.

But, when I run the code, I got an error.

from selenium import webdriver browser = webdriver.Firefox() 

Error

selenium.common.exceptions.WebDriverException: Message:  'The browser appears to have exited before we could connect. The output was: None' 

I read some related pages on stackoverflow and someone suggested to remove all files in tmp folder, so I did it. But, it still doesn't work.

Could anyone please give me a help?

Thank you in advance!

Edit

Traceback (most recent call last):   File "<stdin>", line 1, in <module>   File "/usr/local/lib/python3.4/site-packages/selenium/webdriver/firefox/webdriver.py", line 59, in __init__     self.binary, timeout),   File "/usr/local/lib/python3.4/site-packages/selenium/webdriver/firefox/extension_connection.py", line 47, in __init__     self.binary.launch_browser(self.profile)   File "/usr/local/lib/python3.4/site-packages/selenium/webdriver/firefox/firefox_binary.py", line 64, in launch_browser     self._wait_until_connectable()   File "/usr/local/lib/python3.4/site-packages/selenium/webdriver/firefox/firefox_binary.py", line 103, in _wait_until_connectable     self._get_firefox_output()) selenium.common.exceptions.WebDriverException: Message: 'The browser appears to have exited     before we could connect. The output was: None'  
like image 859
W3Q Avatar asked Sep 27 '14 02:09

W3Q


1 Answers

for Googlers, this answer didn't work for me, and I had to use this answer instead. I am using AWS Ubuntu.

Basically, I needed to install Xvfb and then pyvirtualdisplay:

sudo apt-get install xvfb sudo pip install pyvirtualdisplay 

Once I had done that, this python code worked:

#!/usr/bin/env python  from pyvirtualdisplay import Display from selenium import webdriver  display = Display(visible=0, size=(1024, 768)) display.start()  browser = webdriver.Firefox() browser.get('http://www.ubuntu.com/') print browser.page_source  browser.close() display.stop() 

Thanks to @That1Guy for the first answer

like image 200
Davidjb Avatar answered Sep 22 '22 08:09

Davidjb