Selenium “Unable to find a matching set of capabilities” despite driver being in /usr/local/bin

匿名 (未验证) 提交于 2019-12-03 02:23:02

问题:

I'm trying to follow a tutorial about Selenium, http://selenium-python.readthedocs.io/getting-started.html. I've downloaded the latest version of geckodriver and copied it to /usr/local/bin. However, when I try

from selenium import webdriver driver = webdriver.Firefox() 

I get the following error message:

Traceback (most recent call last):   File "/Users/kurtpeek/Documents/Scratch/selenium_getting_started.py", line 4, in <module>     driver = webdriver.Firefox()   File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/selenium/webdriver/firefox/webdriver.py", line 152, in __init__     keep_alive=True)   File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/selenium/webdriver/remote/webdriver.py", line 98, in __init__     self.start_session(desired_capabilities, browser_profile)   File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/selenium/webdriver/remote/webdriver.py", line 188, in start_session     response = self.execute(Command.NEW_SESSION, parameters)   File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/selenium/webdriver/remote/webdriver.py", line 252, in execute     self.error_handler.check_response(response)   File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/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  [Finished in 1.2s with exit code 1] 

From https://github.com/SeleniumHQ/selenium/issues/3884, it seems like other users are experiencing similar issues, but the Selenium team is unable to reproduce it. How can I get Selenium working with Firefox? (It does work with chromedriver and a webdriver.Chrome() instance, so I suspect this might be a bug in Selenium).

回答1:

Updating Firefox and Selenium solved it for me. I don't pertain to have an explanation for the root cause however.

  • Updated Firefox 48 → 53
  • Updated to Selenium 3.4.1

I also reinstalled/updated Geckodriver using Homebrew and explicitly used it as an executable for Selenium WebDriver, but it turned out that it wasn't necessary to mitigate the "Unable to find matching set of capabilities" error.



回答2:

As a side note, make sure you have the correct version 32/64bit for your geckodriver.



回答3:

for me it was enough to just upgrade FF



回答4:

Mac user here.

I fixed this issue by making sure Firefox is named "Firefox" and in the "Applications" folder. I had called it "Firefox 58" before (I have multiple versions).



易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!