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

Win10下R调用Selenium连接Chrome报错:无法找到Chrome二进制文件

解决R中Selenium连接Chrome时报"cannot find Chrome binary"的问题

我来帮你搞定这个问题!从报错信息能看出来,核心问题是ChromeDriver找不到Chrome的二进制执行文件(chrome.exe)。哪怕你已经把路径加到环境变量里,Selenium有时候还是没法自动识别,咱们可以通过以下几种方式解决:

1. 显式指定Chrome二进制文件路径

在调用remoteDr的时候,直接通过chromeOptions参数把你的chrome.exe路径传进去就行。比如你的Chrome安装在默认路径的话,代码可以这么写:

# 替换成你实际的chrome.exe路径,注意用正斜杠或者双反斜杠
chrome_binary_path <- "C:/Program Files (x86)/Google/Chrome/Application/chrome.exe"

# 连接浏览器时指定路径
sel <- remoteDr(
  browserName = "chrome", 
  port = 4567,
  chromeOptions = list(binary = chrome_binary_path)
)

2. 确保ChromeDriver和Chrome版本完全匹配

你的Chrome是74.0.3729.61,ChromeDriver用的是74.0.3729.6,大版本是对的,但有时候小版本差异也可能出问题。你可以重新下载对应Chrome 74的最新ChromeDriver版本,然后把它的路径加到系统PATH里,或者在启动Selenium服务时指定驱动版本:

# 启动服务时指定ChromeDriver版本
selServ <- selenium(
  chromever = "74.0.3729.6", # 对应你的Chrome版本的驱动
  geckover = NULL, # 不用Firefox的话设为NULL
  phantomver = NULL
)

3. 换用RSelenium的rsDriver启动服务

如果用seleniumPipes的方式还是不行,试试RSelenium自带的rsDriver,它会自动帮你处理驱动和浏览器的匹配问题,用起来更省心:

library(RSelenium)

# 启动Chrome服务,指定驱动版本
rD <- rsDriver(
  browser = "chrome",
  chromever = "74.0.3729.6"
)

# 连接到浏览器
sel <- rD$client

最后再检查这几点

  • 确认环境变量PATH里真的包含chrome.exe和chromedriver.exe的路径,添加完最好重启R或者电脑让配置生效;
  • 如果你的Chrome装在非默认路径(比如自定义文件夹),一定要在代码里显式指定二进制文件路径,不然Selenium找不到它。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.12 04:51:51