【问题标题】:Does not direct to page in Microsoft Edge due to selenium.WebDriverException: Unable to parse remote response: Unknown error由于 selenium.WebDriverException,无法定向到 Microsoft Edge 中的页面:无法解析远程响应:未知错误
【发布时间】:2020-02-13 07:42:35
【问题描述】:

我启动了 Web 驱动程序并尝试连接 URL,但它返回异常 发生的情况是:打开 Web 浏览器,但不指向给定的 Url,并在控制台日志上打印错误。

我的代码如下

Webdriver driver  = new EdgeDriver();
driver.get("https://docs.microsoft.com/en-us/welcome-to-docs");

错误日志

org.openqa.selenium.WebDriverException:无法解析远程响应:未知错误

在 org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:115)

在 org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:74)

在 org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:136)


我启用了开发者模式

我已经在 (C:\WINDOWS\system32>) 中使用以下命令安装了 WebDriver: DISM.exe /Online /Add-Capability /CapabilityName:Microsoft.WebDriver~~~~0.0.1.0

我使用以下版本:

  • 硒版本:'3.141.59'

  • 浏览器:Microsoft Edge,版本 80.0.361.50(官方版本) (64 位)

  • 操作系统版本:18362.535

  • Windows 版:10 版本 1903

对此有何想法?

【问题讨论】:

    标签: selenium selenium-webdriver webdriver microsoft-edge


    【解决方案1】:

    DISM.exe /Online /Add-Capability /CapabilityName:Microsoft.WebDriver~~~~0.0.1.0

    使用上述命令将安装 Microsoft WebDriver for Microsoft Edge Legacy 版本 18,它不适用于 Microsoft Edge 版本 80.0.361.50(官方构建)(64 位)。

    您可以从Here下载相关的Microsoft Edge WebDriver,根据Edge版本号下载WebDriver。

    编辑:

    尝试使用EdgeOptions设置webdriver路径,代码如下:

    using OpenQA.Selenium.Edge;
    using OpenQA.Selenium.Remote;
    
            // EdgeOptions() requires using OpenQA.Selenium.Edge
            // Construct EdgeOptions with is_legacy = false
            EdgeOptions edgeOptions = new EdgeOptions(false);
            edgeOptions.BinaryLocation = @"C:\Program Files (x86)\Microsoft\Edge Beta\Application\msedge.exe"; 
            var msedgedriverDir = @"<download webdriver folder such as:D:\MicrosoftEdgeDriver\edgedriver_win64>";
            var msedgedriverExe = @"msedgedriver.exe";
    
            // Construct EdgeDriverService with is_legacy = false too
            var service = EdgeDriverService.CreateDefaultService(msedgedriverDir, msedgedriverExe, false);
            service.EnableVerboseLogging = true;
    
            var driver = new EdgeDriver(service, edgeOptions);
    
            driver.Navigate().GoToUrl("https://bing.com");
            Thread.Sleep(2000);
    
            driver.Close(); 
    

    有关使用 Chromium 版本 Edge WebDriver 的更多详细信息,请查看此链接:

    WebDriver (Chromium)

    【讨论】:

    • 似乎仍然没有发布到此版本的 Web 驱动程序:浏览器:Microsoft Edge,版本 80.0.361.50(官方构建)(64 位)操作系统构建:18362.535
    • 可能还是使用原来的WebDriver,可以查看上面的编辑代码,使用EdgeOptions设置下载的webdriver路径和edge路径,然后,创建一个EdgeDdriver对象。
    猜你喜欢
    • 2017-11-18
    • 2014-10-22
    • 2022-08-17
    • 1970-01-01
    • 1970-01-01
    • 2016-12-25
    • 2023-03-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多