2017-07-26 101 views
1

我有成功啓動使用硒webdriver的Python的Firefox瀏覽器的問題。我有以下設置參數:硒的webdriver + geckodriver +蟒蛇2.6.6 +火狐在RedHat 6.8無法打開瀏覽器

Selenium Webdriver 3.4.3 
Python 2.6.6 
geckodriver-v0.18.0-linux64.tar.gz 
firefox-45.0.1.1.el6.x86_64 

現在,geckodriver文件解壓縮後,目前正在/usr/local/bin目錄中的rwx一路之隔:

rwxrwxrwx. 1 root root 7129173 Jul 26 14:42 geckodriver 

我已經更新了.bash_profile,包括路徑如:

PATH=$PATH:$HOME/bin:/usr/local/bin/geckodriver 

的腳本,我現在用的就是從硒-3.4.3目錄「README.rst」中的自述。

腳本名稱:first_selenium_script.py

from selenium import webdriver 

browser = webdriver.Firefox() 
browser.get('http://seleniumhq.org/') 

所以,結果如下,

Traceback (most recent call last): 
    File "first_selenium_script.py", line 3, in <module> 
    browser = webdriver.Firefox() 
    File "/usr/lib/python2.6/site- packages/selenium-3.4.3-py2.6.egg/selenium/webdriver/firefox/webdriver.py", line 152, in __init__ 
keep_alive=True) 
    File "/usr/lib/python2.6/site- packages/selenium-3.4.3-py2.6.egg/selenium/webdriver/remote/webdriver.py", line 98, in __init__ 
self.start_session(desired_capabilities, browser_profile) 
    File "/usr/lib/python2.6/site- packages/selenium-3.4.3-py2.6.egg/selenium/webdriver/remote/webdriver.py", line 188, in start_session 
response = self.execute(Command.NEW_SESSION, parameters) 
    File "/usr/lib/python2.6/site- packages/selenium-3.4.3-py2.6.egg/selenium/webdriver/remote/webdriver.py", line 256, in execute 
self.error_handler.check_response(response) 
    File "/usr/lib/python2.6/site-packages/selenium-3.4.3-py2.6.egg/selenium/webdriver/remote/errorhandler.py", line 194, in check_response 
    raise exception_class(message, screen, stacktrace) 
selenium.common.exceptions.WebDriverException: Message: Unable to find a matching set of capabilities 

任何想法請。 。 。謝謝。

+0

你有沒有退出並返回到開始使用新的.bash_profile文件?你可以嘗試把geckodriver在/ usr/bin中/ geckodriver相反,我知道這就是我擁有它。 – Jonathan

+0

嗯...我只是發現了野生此評論:https://github.com/SeleniumHQ/selenium/issues/3884#issuecomment-296501573看起來像最新版本的geckodriver可能無法與Firefox 45的工作嘗試如果可以的話,升級FireFox。 – Jonathan

+0

搜索網多一點,我發現,alimp5的溶液@ [鏈接] https://github.com/SeleniumHQ/selenium/issues/3884 >>>'從硒進口的webdriver 帽= webdriver.DesiredCapabilities( ).FIREFOX ... caps [「marionette」] = False ... driver = webdriver.Firefox(capabilities = caps)... driver.get(「http://www.google.com」 )... print driver.title ... driver.quit()'<<< 哪些工作。 。 。我不明白爲什麼,但我會繼續閱讀,直到我做到。 –

回答

0

做一些研究之後,我幾乎可以肯定,我的意見是正確的 - 火狐45之間的版本不兼容和geckodriver 0.18。按照geckodriver page

v0.18.0

geckodriver現在建議的Firefox 53和更高

它看起來像火狐45可能與geckodriver不兼容。 Geckodriver在2015年4月9日是initially released,2015年3月8日是Firefox 45 was released.

所以雖然可能有一些機會讓它在老的geckodriver上工作,但最好的選擇是將FireFox更新爲> = v53。

相關問題