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

求助:RSelenium出现localhost端口连接拒绝错误及驱动版本适配问题

解决RSelenium连接拒绝与驱动版本适配问题

核心问题分析

你遇到的Connection refused本质是驱动与浏览器版本不匹配,叠加可能的Selenium Server兼容性、端口拦截问题,导致本地连接失败。以下是针对性解决步骤:


1. 手动指定匹配的ChromeDriver(推荐)

当Chrome版本过新,binman未收录对应驱动时,直接手动下载完全匹配的版本:

  • 从Chrome官方驱动渠道下载与你当前Chrome版本完全一致的chromedriver(注意区分操作系统)
  • 将下载的驱动文件放到本地任意路径(比如C:/chromedriver/)
  • 修改代码,在rsDriver中指定驱动路径:
library(tidyverse)
library(RSelenium)
library(netstat)

# 指定本地chromedriver路径
rs_driver_var <- rsDriver(
  browser = "chrome",
  verbose = FALSE,
  port = free_port(),
  chromever = "C:/chromedriver/chromedriver.exe" # 替换为你的实际路径
)

remDr <- rs_driver_var$client
# 注意:rsDriver启动后已自动打开浏览器,无需再调用remDr$open()

2. 降级Chrome到binman支持的版本

如果不想手动管理驱动,可将Chrome降级到binman::list_versions("chromedriver")中存在的最高版本:

  • 运行binman::list_versions("chromedriver")查看支持的驱动版本(比如114.0.5735.90)
  • 下载对应大版本的Chrome安装包(比如Chrome 114)并安装
  • 重新运行原代码,binman会自动下载匹配的chromedriver

3. 更新Selenium Server版本

旧版Selenium Server可能与新驱动不兼容,手动更新到最新版:

# 安装最新版Selenium Server
binman::install_versions("seleniumserver", "4.11.0") # 替换为当前最新版本号

# 启动时指定Selenium Server版本
rs_driver_var <- rsDriver(
  browser = "chrome",
  verbose = FALSE,
  port = free_port(),
  seleniumserverVersion = "4.11.0"
)

4. 排查端口与权限问题

  • 暂时关闭系统防火墙或杀毒软件,排查是否有本地连接拦截
  • 手动指定端口而非使用free_port(),比如port = 4445,确保该端口未被占用
  • 以管理员身份运行RStudio,避免权限不足导致的端口绑定失败

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.02 14:22:33