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

Selenium无法连接Chrome服务,无法打开指定URL求助

解决方案

核心错误修正

你代码里的关键问题:Service对象需要传入ChromeDriver可执行文件的路径,但你现在传的是Chrome浏览器的chrome.exe路径,这直接导致WebDriver无法建立服务连接。

修正后的基础代码:

from selenium import webdriver
from selenium.webdriver.chrome.service import Service

# 替换为你的ChromeDriver实际路径
service_obj = Service(r"C:\xx\xx\xx\chromedriver.exe")
# 初始化driver对象(你之前漏了这一步)
driver = webdriver.Chrome(service=service_obj)
driver.get("https://www.cnn.com/")

# 操作完成后关闭浏览器
driver.quit()

如果用webdriver_manager自动匹配驱动,可简化为:

from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
from selenium.webdriver.chrome.service import Service

# 自动下载并匹配对应版本的ChromeDriver
service_obj = Service(ChromeDriverManager().install())
driver = webdriver.Chrome(service=service_obj)
driver.get("https://www.cnn.com/")
driver.quit()

额外排查步骤

  • 严格匹配版本:Chrome 117必须对应ChromeDriver 117.x.x.x,大版本号必须完全一致,不能混用不同版本的驱动。
  • 检查驱动权限:右键ChromeDriver.exe,选择「以管理员身份运行」,或给当前用户赋予该文件的读取/执行权限。
  • 禁用Chrome自动更新:若Chrome自动升级,会导致驱动版本不匹配,可通过组策略或修改注册表关闭自动更新。
  • 添加Chrome启动参数:避免权限或配置冲突,比如:
    from selenium.webdriver.chrome.options import Options
    
    options = Options()
    options.add_argument("--no-sandbox")
    options.add_argument("--disable-dev-shm-usage")
    # 可指定本地Chrome用户数据目录,避免临时配置问题
    options.add_argument(r"--user-data-dir=C:\Users\你的用户名\AppData\Local\Google\Chrome\User Data")
    
    driver = webdriver.Chrome(service=service_obj, options=options)
    
  • 检查代理设置:系统全局代理可能导致Chrome无法加载外部URL,可临时关闭代理,或在ChromeOptions中配置代理参数。
  • 修复host文件:取消注释127.0.0.1 localhost和::1 localhost,确保本地回环地址正常解析,这会影响WebDriver与浏览器的通信。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.10 18:25:14