首页 > 解决方案 > Centos7 上的 Python Selenium/Geckodriver 无法启动:无法找到一组匹配的功能

问题描述

我正在尝试使用 Selenium 对网站进行一些自动化测试,但收到此异常:

Traceback (most recent call last):
  File "guitester.py", line 22, in <module>
    browser = webdriver.Firefox(executable_path=gecko_path, firefox_binary=binary)
  File "/home/ian/python3_venv/lib/python3.6/site-packages/selenium/webdriver/firefox/webdriver.py", line 174, in __init__
    keep_alive=True)
  File "/home/ian/python3_venv/lib/python3.6/site-packages/selenium/webdriver/remote/webdriver.py", line 157, in __init__
    self.start_session(capabilities, browser_profile)
  File "/home/ian/python3_venv/lib/python3.6/site-packages/selenium/webdriver/remote/webdriver.py", line 252, in start_session
    response = self.execute(Command.NEW_SESSION, parameters)
  File "/home/ian/python3_venv/lib/python3.6/site-packages/selenium/webdriver/remote/webdriver.py", line 321, in execute
    self.error_handler.check_response(response)
  File "/home/ian/python3_venv/lib/python3.6/site-packages/selenium/webdriver/remote/errorhandler.py", line 242, in check_response
    raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.SessionNotCreatedException: Message: Unable to find a matching set of capabilities

我的 PATH 中有 geckodriver,并仔细检查了所有相关软件的版本。我的代码是基本的:

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.firefox.firefox_binary import FirefoxBinary

gecko_path = '/usr/local/bin/geckodriver'
binary = FirefoxBinary('/usr/bin/firefox')
browser = webdriver.Firefox(executable_path=gecko_path, firefox_binary=binary)

我已经尝试过使用和不使用 webdriver.Firefox() 包含的参数,并且无论哪种方式都得到相同的异常。其他帖子提到了不正确的版本,但我的研究表明我使用的所有东西都应该兼容。我正在使用python虚拟环境。

标签: pythonseleniumselenium-webdrivergeckodriverselenium-firefoxdriver

解决方案


推荐阅读