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

求助:Selenium+Python无法连接指定Chrome配置文件与活跃标签页

解决Selenium连接已打开Chrome实例(指定配置文件)的问题

核心问题分析

你当前的代码是尝试启动新的Chrome实例,而非连接已运行的实例。即使指定了--user-data-dir,Chrome也可能因为进程冲突或默认行为创建临时配置,导致无法复用已打开的标签页。

正确解决方案步骤

1. 手动启动带远程调试的Chrome(指定你的Profile 1)

首先关闭所有Chrome窗口,然后通过命令行启动Chrome,开启远程调试并指定你的配置文件:

Windows命令行示例:

# 直接用Chrome路径启动,指定调试端口和配置文件
"C:\Program Files\Google\Chrome\Application\chrome.exe" --remote-debugging-port=9222 --user-data-dir="C:\Users\loai\AppData\Local\Google\Chrome\User Data" --profile-directory="Profile 1"
  • 必须关闭所有Chrome进程,否则新启动的窗口会复用现有进程,无法开启调试端口。
  • 如果找不到chrome.exe,替换为你的Chrome实际安装路径。

2. 修改Python代码连接到已运行的Chrome实例

代码不需要启动新Chrome,只需连接到已开启调试的实例:

from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

chrome_options = Options()
# 连接到本地9222端口的调试Chrome
chrome_options.add_experimental_option("debuggerAddress", "localhost:9222")

# Selenium 4.6+版本无需手动指定chromedriver路径,自动匹配
driver = webdriver.Chrome(options=chrome_options)
# 若使用旧版本Selenium,需指定chromedriver路径:
# driver = webdriver.Chrome(executable_path="C:\\path\\to\\chromedriver.exe", options=chrome_options)

# 现在可以直接操作已打开的Chrome窗口,或导航到目标URL
driver.get("https://nft.bueno.art/NS1PNAih8UHV6y1XviWJU/art/kZK_iEBrl-kK8NY_UznyI/preview")

# 等待元素加载并点击
wait = WebDriverWait(driver, 10)
element = wait.until(EC.presence_of_element_located((By.CSS_SELECTOR, ".virtuoso-grid-item")))
driver.execute_script("arguments[0].click();", element)

关键注意事项

  • 版本匹配:确保Chrome版本(109.0.5414.75)与chromedriver版本完全一致,否则会出现兼容性错误。
  • 端口冲突:如果9222端口被占用,替换为其他未使用的端口(如9223),命令行和代码中的端口需保持一致。
  • 配置路径正确性:--user-data-dir指向的是Chrome的User Data文件夹,而非具体的Profile子文件夹;--profile-directory才是指定具体的Profile名称(如Profile 1)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.04 20:20:50