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

Windows 11环境下RSelenium启动Chrome失败问题求助

问题:RSelenium无法在Windows 11启动Chrome浏览器

在Windows 11设备(台式机和笔记本)上使用RSelenium启动Chrome浏览器失败,但Firefox可正常运行。已完成以下排查操作:

  • 确认Chromedriver版本与Chrome版本(通过chrome://version/查看)匹配(版本为110.0.5481.30)
  • 使用netstat库的free_port()函数分配可用端口,也手动更换过端口
  • 删除了C:\Users\Usuario\AppData\Local\binman下的文件并刷新DNS
  • 该问题在多台Windows 11设备(自己的台式机、笔记本及朋友的笔记本)上均出现

相关代码

pacman::p_load(tidyverse,
               RSelenium,
               netstat) # free port function

rs_driver_object = rsDriver(browser = "chrome",
                            chromever = "110.0.5481.30",
                            verbose = FALSE,
                            port = free_port())


remdr = rs_driver_object$client

错误信息

Could not open chrome browser.
Client error message:
Undefined error in httr call. httr output: Failed to connect to localhost port 14415: Connection refused
Check server log for further details.
Warning message:
In rsDriver(browser = "chrome", chromever = "110.0.5481.30", verbose = FALSE,  :
  Could not determine server status.

可能的解决方法

  • 启用verbose模式查看详细日志
    将rsDriver中的verbose参数设为TRUE,获取服务器端详细日志,定位具体失败原因,比如Chrome启动参数错误、权限问题等。

  • 指定Chrome二进制文件路径
    如果系统存在多个Chrome版本,可能导致Chromedriver找不到正确程序。可通过extraCapabilities指定Chrome绝对路径:

    chrome_options = list(
      chromeOptions = list(
        binary = "C:/Program Files/Google/Chrome/Application/chrome.exe"
      )
    )
    rs_driver_object = rsDriver(browser = "chrome",
                                chromever = "110.0.5481.30",
                                verbose = TRUE,
                                port = free_port(),
                                extraCapabilities = chrome_options)
    
  • 添加Chrome启动参数
    尝试添加无沙箱、禁用GPU等参数,规避Windows权限或图形渲染问题:

    chrome_options = list(
      chromeOptions = list(
        args = c("--no-sandbox", "--disable-gpu", "--disable-dev-shm-usage")
      )
    )
    rs_driver_object = rsDriver(browser = "chrome",
                                chromever = "110.0.5481.30",
                                verbose = TRUE,
                                port = free_port(),
                                extraCapabilities = chrome_options)
    
  • 检查Windows Defender防火墙设置
    防火墙可能阻止RSelenium与Chromedriver的本地连接,可临时关闭防火墙测试,或给R程序、Chromedriver添加防火墙允许规则。

  • 更新RSelenium及依赖包
    运行update.packages(c("RSelenium", "httr", "netstat"))更新所有相关包,确保版本兼容。

  • 手动启动Chromedriver再连接
    打开命令提示符,运行下载好的Chromedriver(路径一般为C:\Users\Usuario\AppData\Local\binman\binman_chromedriver\win32\110.0.5481.30\chromedriver.exe),然后在R中直接连接:

    remdr = remoteDriver(browserName = "chrome", port = 9515) # 默认端口9515
    remdr$open()
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.30 02:05:07