MSEdgeDriver - 未创建会话:使用 Python 在 Selenium 上找不到匹配的功能错误

问题描述

让我们的自动化在 Microsoft Edge 上运行时遇到一些问题。安装了正确的浏览器版本驱动程序,并尝试了其他一些“修复”但无济于事。这是在 PyCharm 上使用 Selenium 和 python3

回到开头,这是我的代码...

SftpClient.SynchronizeDirectories

以下是引发的错误...

selenium.common.exceptions.SessionNotCreatedException:消息:会话未创建:未找到匹配的功能

任何帮助,将不胜感激。

解决方法

我猜你正在使用 Edge Chromium,你可以参考以下步骤使用 Selenium python 代码自动化 Edge 浏览器:

  1. 从此 link 下载并安装 Python。

  2. 管理员身份启动命令提示符。

  3. 运行以下命令以安装 Edge Selenium 工具。

    pip install msedge-selenium-tools selenium==3.141
    
  4. 从此 link 安装正确版本的 Edge 网络驱动程序。 (WebDriver版本应与Edge浏览器版本一致)

  5. 使用下面的代码创建一个 Python 文件并根据您自己的要求修改它。

    from msedge.selenium_tools import Edge,EdgeOptions
    
    options = EdgeOptions()
    options.use_chromium = True
    options.binary_location = r"C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe"
    driver = Edge(executable_path = r"D:\selenium web drivers\edge driver\msedgedriver.exe",options = options) # Modify the path here...
    driver.get("https://example.com")
    

更新:

如果您使用的是 Mac OS,则需要发送功能。你可以尝试发送一个空的能力:

desired_cap={}

driver = webdriver.Edge(executable_path='/Users/james.stott/PycharmProjects/venv/Selenium/Remote/msedgedriver',capabilities=desired_cap)