如何解决无法连接到ruby中的chromedriver 127.0.0.1

时间:2018-04-05 05:59:54

标签: ruby selenium-webdriver selenium-chromedriver watir

我正在使用chrome驱动程序2.35(尝试到v 2.9)和chrome浏览器v 65。

使用的宝石: watir 6.10.3 selenium-webdriver 3.11.0

错误消息:

Selenium::WebDriver::Error::WebDriverError: unable to connect to chromedriver 127.0.0.1:9515
    from C:/Ruby23/lib/ruby/gems/2.3.0/gems/selenium-webdriver-3.11.0/lib/selenium/webdriver/common/service.rb:142:in `connect_until_stable'
    from C:/Ruby23/lib/ruby/gems/2.3.0/gems/selenium-webdriver-3.11.0/lib/selenium/webdriver/common/service.rb:72:in `block in start'
    from C:/Ruby23/lib/ruby/gems/2.3.0/gems/selenium-webdriver-3.11.0/lib/selenium/webdriver/common/socket_lock.rb:39:in `locked'
    from C:/Ruby23/lib/ruby/gems/2.3.0/gems/selenium-webdriver-3.11.0/lib/selenium/webdriver/common/service.rb:69:in `start'
    from C:/Ruby23/lib/ruby/gems/2.3.0/gems/selenium-webdriver-3.11.0/lib/selenium/webdriver/chrome/driver.rb:42:in `initialize'
    from C:/Ruby23/lib/ruby/gems/2.3.0/gems/selenium-webdriver-3.11.0/lib/selenium/webdriver/common/driver.rb:44:in `new'
    from C:/Ruby23/lib/ruby/gems/2.3.0/gems/selenium-webdriver-3.11.0/lib/selenium/webdriver/common/driver.rb:44:in `for'
    from C:/Ruby23/lib/ruby/gems/2.3.0/gems/selenium-webdriver-3.11.0/lib/selenium/webdriver.rb:85:in `for'
    from C:/Ruby23/lib/ruby/gems/2.3.0/gems/watir-6.10.3/lib/watir/browser.rb:48:in `initialize'

2 个答案:

答案 0 :(得分:1)

我将chrome版本降级为62并禁用自动更新以解决此问题。 旧版本here 在安装旧版本之前,需要遵循一些步骤。

  1. 卸载当前版本的chrome
  2. 导航到C:\ Users \\ AppData \ Local并删除谷歌 目录
  3. 导航到C:\ Program Files(x86)并删除google目录
  4. 安装预期的旧版本
  5. 不要打开Chrome浏览器,Chrome会自动更新。
  6. 输入' msconfig'在运行命令中,确保谷歌更新服务已停止'状态
  7. 导航至' C:\ Program Files(x86)\ Google'并重命名'更新' 目录到其他名称。如果重命名被拒绝确保全部 chrome相关任务在任务管理器中关闭然后尝试 重命名。
  8. 现在打开chrome并导航到Help->关于Google Chrome。如果你得到了 更新的错误消息然后chrome不会更新。

答案 1 :(得分:0)

我有同样的问题,无法连接chromedriver。所以我没有使用不同的chrome驱动程序版本,而是在我的gem列表中添加了名为 chromedriver-helper 的gem,现在工作正常。