【问题标题】:How do I set options for the Selenium MS Edge driver in ruby?如何在 ruby​​ 中设置 Selenium MS Edge 驱动程序的选项?
【发布时间】:2020-07-11 09:48:17
【问题描述】:

我正在尝试在 Windows 上使用 Selenium::WebDriver::Edge::Driver 打开浏览器。我能够打开浏览器,但我的会话立即崩溃并出现此错误:

unknown command: Cannot call non W3C standard command while in W3C mode 
(Selenium::WebDriver::Error::UnknownCommandError)

如何在 selenium ruby​​ 中关闭 W3C 模式?我试图通过这样做来关注文档here

webdriver_options = Selenium::WebDriver::Edge::Options.new(opts: {w3c: false})

在实例化 webdriver 之前。然而,这似乎没有什么区别——我怀疑我设置的选项错误。有没有人见过这个问题?谢谢。

【问题讨论】:

  • 您使用的是哪个版本的 Edge 浏览器? Edge Legacy 还是 Edge Chromium 浏览器?我对 ruby​​ 不熟悉,但我发现了一些类似的线程。您可以参考this thread。如果您使用的是 Edge Chromium,我认为这些选项类似于 Chrome。你可以试试capabilities = { "edgeOptions" => {'w3c' => false} }options = Selenium::WebDriver::Edge::Options.new, options.add_option('w3c', false)
  • @YuZhou 谢谢!添加功能 = { "edgeOptions" => {'w3c' => false} } 然后将其传递给驱动程序解决了我的问题
  • 太好了!我想把它作为一个答案,希望你能把它标记为一个接受的答案。它可以在未来帮助其他社区成员解决类似的问题。感谢您的理解。

标签: ruby selenium-webdriver microsoft-edge


【解决方案1】:

如果您使用的是 Edge Chromium,我认为这些选项类似于 Chrome。您可以参考this thread 并添加以下代码,然后将其传递给驱动程序:

capabilities = { "edgeOptions" => {'w3c' => false} }

【讨论】:

    【解决方案2】:
    1. 验证您的浏览器是否是最新的
    2. 开始>设置>系统>关于; - 并验证操作系统构建
    3. 下载最后一个驱动:https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/
    4. 解压las版本到:C:\Ruby23-x64\bin;
    5. 如果你正在使用水豚,试试这个:

      Capybara.register_driver :selenium do |app|

      Capybara::Selenium::Driver.new(app, :browser => :edge)

      结束

    【讨论】:

      猜你喜欢
      • 2020-11-07
      • 2015-05-23
      • 2019-08-10
      • 1970-01-01
      • 2021-05-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多