【问题标题】:Loading chrome with extension using watir-webdriver gives Timeout error使用 watir-webdriver 加载带有扩展名的 chrome 会出现超时错误
【发布时间】:2014-09-01 19:17:32
【问题描述】:

我在 chrome 中安装了 HTML Tidy 扩展。

当我这样做时:

b = Watir::Browser.new :chrome

Chrome 浏览器打开,但没有扩展。

所以我使用了以下内容:

b = Watir::Browser.new (:chrome, :switches => %w[--load-extension=
"C:\Users\.....\AppData\Local\Google\Chrome\UserData\Default\Extensions\gljdonhfjnfdklljmfaabfpjlonflfnm"])

这会打开带有扩展程序的 Chrome 浏览器

但几秒钟后它给了我错误:

[0402/141412:ERROR:proxy_launcher.cc(551)] 等待测试失败 渠道存在。测试\自动化\proxy_launcher.cc(477):错误:值 来自:automation_proxy_.get()

实际:false 预期:true Timeout::Error: Timeout::Error

我做了一个搜索,它看起来像一个 chromedriver 错误。

我正在使用 Chromedriver 版本:26.0.1383.0

有人遇到过这个问题吗?如果有可用的,有人可以建议一种解决方法吗?

【问题讨论】:

  • 请描述 HTML Tidy 为您解决的问题。如果没有的话,。不要使用它。如果您想捕获干净的 HTML,也许您可​​以在抓取后对其进行清理。还。我看到了一个用于 Firefox 的 HTML Tidy 插件。
  • 我将使用 HTML tidy 来获取 HTML 错误和警告,并为我们的新构建生成报告。为此,我正在使用我们现有的自动化框架 watir-webdriver。
  • 我已经找到了解决这个问题的方法。基本上只需删除引号并将反斜杠替换为正斜杠并转义字符以获取路径中的空格。它启动正常。
  • 您应该发布解决您问题的确切代码作为答案并接受它,这样如果其他人遇到这个问题,这个问题似乎不会没有答案

标签: watir watir-webdriver selenium-chromedriver


【解决方案1】:

Ruby 库Nokogiri can check for well formed markup。然后你不依赖浏览器的东西。您可以从 Watir-Webdriver 捕获 html。或者您可以从net/http 捕获它。

require "net/http"
require "uri"
require "nokogiri"

uri = URI.parse("http://www.google.com")
response = Net::HTTP.get_response(uri)
puts parse_body(response.body)

def parse_body(response)
  begin
    return Nokogiri::XML(response) { |config| config.strict }
  rescue Nokogiri::XML::SyntaxError => e
    return "caught exception: #{e}"
  end
end

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-12-31
    • 2013-03-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多