You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ruby REPL冻结及SSL握手失败问题求助(Windows+VS Code)

解决Watir启动Chrome后REPL冻结及SSL握手错误的方法

1. 确保ChromeDriver与Chrome版本完全匹配

Watir依赖ChromeDriver驱动Chrome,版本不匹配是常见兼容性问题:

  • 打开Chrome,通过「设置→关于Chrome」查看当前Chrome版本号
  • 下载对应版本的ChromeDriver,替换系统中旧的驱动文件,或把ChromeDriver所在路径添加到系统环境变量PATH中

2. 临时禁用SSL证书验证(解决握手错误)

启动浏览器时添加忽略SSL错误的参数,修改代码为:

require "nokogiri"
require "watir"
browser = Watir::Browser.new(:chrome, options: { args: ['--ignore-certificate-errors', '--ignore-ssl-errors'] })

3. 避免在REPL中直接启动浏览器

VS Code的REPL环境容易因浏览器进程阻塞,建议:

  • 将测试代码写入脚本文件(如test_spider.rb),在终端执行ruby test_spider.rb运行
  • 若必须使用REPL,启动浏览器后立即执行跳转命令,比如browser.goto('https://example.com'),避免空白页导致的进程阻塞

4. 更新相关Gem依赖

执行以下命令更新所有相关Gem,修复已知bug:

gem update watir nokogiri pry

5. 清理Chrome残留进程

打开任务管理器,结束所有chrome.exe和chromedriver.exe进程,再重新运行测试,避免残留进程引发冲突

内容的提问来源于stack exchange,提问作者ppak

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.21 16:42:34