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

RSelenium调用rsDriver启动Chrome浏览器超时报错解决方案问询

解决方案

  • 修复Chrome版本匹配问题
    报错提示driver.version: unknown核心原因大多是chromever="latest"无法匹配你本地安装的Chrome浏览器版本,按以下操作:
    1. 打开Chrome浏览器,进入「设置 > 关于Google Chrome」,查看完整版本号,例如119.0.6045.105
    2. 将代码中的chromever参数替换为你查到的具体版本号:
    client_server <- RSelenium::rsDriver(browser="chrome", 
                                     chromever="119.0.6045.105", 
                                     port=4444L, 
                                     verbose=F)
    
    1. 若提示对应版本不存在,可运行wdman::chrome_available()查看支持的所有ChromeDriver版本,选择和你本地Chrome大版本一致的即可。
  • 升级依赖包与运行环境
    你使用的Selenium为2019年的4.0.0-alpha预览版,兼容性较差:
    1. 先升级RSelenium与配套依赖包:
    install.packages(c("RSelenium", "wdman"))
    
    1. 升级本地Java版本到11及以上,老旧的Java 8 31版本与新Selenium/ChromeDriver兼容性存在缺陷。
  • 解决Mac系统权限拦截问题
    Mac默认会拦截未经过公证的ChromeDriver运行,导致启动超时:
    1. 运行wdman::chrome()查看默认ChromeDriver的本地存储路径
    2. 打开访达定位到对应路径,右键点击ChromeDriver文件,选择「打开」,确认允许运行后关闭窗口即可
      也可以直接在终端执行权限解除命令:
    sudo xattr -d com.apple.quarantine 替换为你的ChromeDriver路径
    
  • 清理残留进程后改用更稳定的启动方式
    若之前启动失败有残留进程占用资源,即使更换端口也可能出现异常:
    1. 终端执行lsof -i :4444查看占用4444端口的进程ID,执行kill -9 进程ID结束残留进程
    2. 避免使用rsDriver的封装逻辑,改用手动启动Driver后连接的方式,稳定性更高:
    # 启动ChromeDriver服务
    drv <- wdman::chrome(port = 4444L, version = "你的Chrome对应版本号")
    # 连接Driver
    remDr <- RSelenium::remoteDriver(browserName = "chrome", port = 4444L)
    remDr$open()
    # 测试访问
    remDr$navigate("https://www.baidu.com")
    # 使用完成后关闭资源
    remDr$close()
    drv$stop()
    
  • 关闭全局代理
    全局代理会导致Selenium无法连接本地Driver服务,运行代码前关闭系统全局代理再试。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 20:45:05