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

使用指定Chrome配置文件启动Selenium时程序崩溃求助

解决Selenium启动指定Chrome配置文件崩溃的问题

问题重现

尝试用Selenium启动带有指定Chrome配置文件的浏览器时出现崩溃,报错提示DevToolsActivePort file doesn't exist,相关代码如下:

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

options = webdriver.ChromeOptions()
options.add_argument("--profile-directory=Profile 2")
options.add_argument("--user-data-dir=C://Users//user//AppData//Local//Google//Chrome//User Data")
#options.add_argument('--headless')

driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()), options=options)

time.sleep(3)

控制台错误输出:

Traceback (most recent call last):
  File "C:\Users\user\PycharmProjects\pythonProject3\main.py", line 13, in <module>
    driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()), options=options)
  File "C:\Users\user\PycharmProjects\pythonProject3\venv\lib\site-packages\selenium\webdriver\chrome\webdriver.py", line 84, in __init__
    super().__init__(
  File "C:\Users\user\PycharmProjects\pythonProject3\venv\lib\site-packages\selenium\webdriver\chromium\webdriver.py", line 104, in __init__
    super().__init__(
  File "C:\Users\user\PycharmProjects\pythonProject3\venv\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 286, in __init__
    self.start_session(capabilities, browser_profile)
  File "C:\Users\user\PycharmProjects\pythonProject3\venv\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 378, in start_session
    response = self.execute(Command.NEW_SESSION, parameters)
  File "C:\Users\user\PycharmProjects\pythonProject3\venv\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 440, in execute
    self.error_handler.check_response(response)
  File "C:\Users\user\PycharmProjects\pythonProject3\venv\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 245, in check_response
    raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.WebDriverException: Message: unknown error: Chrome failed to start: exited normally.
  (unknown error: DevToolsActivePort file doesn't exist)
  (The process started from chrome location C:\Program Files\Google\Chrome\Application\chrome.exe is no longer running, so ChromeDriver is assuming that Chrome has crashed.)
Stacktrace:
Backtrace:
    GetHandleVerifier [0x005B8893+48451]
    (No symbol) [0x0054B8A1]
    (No symbol) [0x00455058]
    (No symbol) [0x00473211]
    (No symbol) [0x00470019]
    (No symbol) [0x004A0798]
    (No symbol) [0x004A047C]
    (No symbol) [0x0049A0B6]
    (No symbol) [0x00477E08]
    (No symbol) [0x00478F2D]
    GetHandleVerifier [0x00818E3A+2540266]
    GetHandleVerifier [0x00858959+2801161]
    GetHandleVerifier [0x0085295C+2776588]
    GetHandleVerifier [0x00642280+612144]
    (No symbol) [0x00554F6C]
    (No symbol) [0x005511D8]
    (No symbol) [0x005512BB]
    (No symbol) [0x00544857]
    BaseThreadInitThunk [0x77680099+25]
    RtlGetAppContainerNamedObjectPath [0x77CA7B6E+286]
    RtlGetAppContainerNamedObjectPath [0x77CA7B3E+238]

Process finished with exit code 1

解决方案

1. 关闭所有Chrome进程

打开任务管理器,结束所有chrome.exe和chromedriver.exe进程,避免配置文件被其他实例占用。

2. 修正路径格式

Windows路径建议使用原始字符串(前缀r)或单斜杠,避免转义字符引发的问题:

options.add_argument(r"--user-data-dir=C:\Users\user\AppData\Local\Google\Chrome\User Data")

3. 添加必要的启动参数

添加以下参数解决DevToolsActivePort相关冲突:

options.add_argument("--no-sandbox")
options.add_argument("--disable-dev-shm-usage")
options.add_argument("--remote-debugging-port=9222")  # 指定固定调试端口,避免端口占用

4. 验证配置文件路径

确认Profile 2文件夹确实存在于User Data目录下,路径名称需完全匹配(注意大小写、空格)。

5. 复制配置文件到独立目录(可选)

如果原用户数据目录被其他Chrome实例占用,可复制Profile 2到新的独立目录,再修改代码中的路径:

options.add_argument(r"--user-data-dir=C:\Users\user\Documents\MyChromeProfile")
options.add_argument("--profile-directory=Profile 2")

修改后的完整代码

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

options = webdriver.ChromeOptions()
options.add_argument(r"--user-data-dir=C:\Users\user\AppData\Local\Google\Chrome\User Data")
options.add_argument("--profile-directory=Profile 2")
options.add_argument("--no-sandbox")
options.add_argument("--disable-dev-shm-usage")
options.add_argument("--remote-debugging-port=9222")

driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()), options=options)

time.sleep(3)
driver.quit()  # 程序结束时主动关闭浏览器进程

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.22 05:00:40