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

Selenium启动Chrome时崩溃求助(MacOS Ventura环境)

问题描述

在MacOS Ventura系统中,尝试通过Selenium加载Chrome用户配置文件以实现Google账号自动化免重复登录,但Chrome刚启动就崩溃。已确认chromedriver与Google Chrome版本一致。

代码示例

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

service = Service("/usr/local/bin/chromedriver")

ch_options = Options()  # options
ch_options.add_argument("user-data-dir=/Users/matheus/Library/Application Support/Google/Chrome")
ch_options.add_argument("--profile-directory=Profile 2")

driver = webdriver.Chrome(service=service, options=ch_options)

driver.get("https://gmail.com")

崩溃日志

Traceback (most recent call last):
  File "/Users/matheus/dev/work-automations/main.py", line 12, in <module>
    driver = webdriver.Chrome(service=service, options=ch_options)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/matheus/dev/work-automations/venv/lib/python3.11/site-packages/selenium/webdriver/chrome/webdriver.py", line 69, in __init__
    super().__init__(DesiredCapabilities.CHROME['browserName'], "goog",
  File "/Users/matheus/dev/work-automations/venv/lib/python3.11/site-packages/selenium/webdriver/chromium/webdriver.py", line 92, in __init__
    super().__init__(
  File "/Users/matheus/dev/work-automations/venv/lib/python3.11/site-packages/selenium/webdriver/remote/webdriver.py", line 272, in __init__
    self.start_session(capabilities, browser_profile)
  File "/Users/matheus/dev/work-automations/venv/lib/python3.11/site-packages/selenium/webdriver/remote/webdriver.py", line 364, in start_session
    response = self.execute(Command.NEW_SESSION, parameters)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/matheus/dev/work-automations/venv/lib/python3.11/site-packages/selenium/webdriver/remote/webdriver.py", line 429, in execute
    self.error_handler.check_response(response)
  File "/Users/matheus/dev/work-automations/venv/lib/python3.11/site-packages/selenium/webdriver/remote/errorhandler.py", line 243, in check_response
    raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.WebDriverException: Message: unknown error: Chrome failed to start: exited normally.
  (chrome not reachable)
  (The process started from chrome location /Applications/Google Chrome.app/Contents/MacOS/Google Chrome is no longer running, so ChromeDriver is assuming that Chrome has crashed.)
Stacktrace:
0   chromedriver                        0x000000010276aa88 chromedriver + 4123272
1   chromedriver                        0x00000001026f6778 chromedriver + 3647352
2   chromedriver                        0x00000001023b8ac4 chromedriver + 248516
3   chromedriver                        0x00000001023dc2a4 chromedriver + 393892
4   chromedriver                        0x00000001023d8858 chromedriver + 378968
5   chromedriver                        0x00000001024125a0 chromedriver + 615840
6   chromedriver                        0x00000001024121d8 chromedriver + 614872
7   chromedriver                        0x00000001023e2b10 chromedriver + 420624
8   chromedriver                        0x00000001023e3c30 chromedriver + 425008
9   chromedriver                        0x000000010273cae4 chromedriver + 3934948
10  chromedriver                        0x000000010273ff24 chromedriver + 3948324
11  chromedriver                        0x0000000102740508 chromedriver + 3949832
12  chromedriver                        0x0000000102746b30 chromedriver + 3975984
13  chromedriver                        0x0000000102740b24 chromedriver + 3951396
14  chromedriver                        0x000000010271b71c chromedriver + 3798812
15  chromedriver                        0x000000010275d2f0 chromedriver + 4068080
16  chromedriver                        0x000000010275d444 chromedriver + 4068420
17  chromedriver                        0x0000000102771450 chromedriver + 4150352
18  libsystem_pthread.dylib             0x000000018421a06c _pthread_start + 148
19  libsystem_pthread.dylib             0x0000000184214e2c thread_start + 8

Process finished with exit code 1
解决方案

针对MacOS Ventura下加载Chrome配置文件导致崩溃的问题,可按以下步骤排查修复:

  • 关闭所有Chrome进程:Selenium无法访问被占用的用户配置文件,通过活动监视器彻底关闭Chrome的所有进程后再运行代码。
  • 修正路径格式:MacOS路径含空格时需用引号包裹或转义,修改user-data-dir参数:
    # 方式1:用引号包裹路径
    ch_options.add_argument('user-data-dir="/Users/matheus/Library/Application Support/Google/Chrome"')
    # 方式2:转义空格
    ch_options.add_argument("user-data-dir=/Users/matheus/Library/Application\ Support/Google/Chrome")
    
  • 检查目录权限:确保运行Python的用户对/Users/matheus/Library/Application Support/Google/Chrome/Profile 2有读写权限,可通过右键目录→「显示简介」→「共享与权限」添加当前用户并赋予权限。
  • 复制配置到独立目录:直接使用系统默认配置目录易引发冲突,复制Profile 2到新目录(如/Users/matheus/dev/chrome-profile),修改代码路径:
    ch_options.add_argument("user-data-dir=/Users/matheus/dev/chrome-profile")
    
  • 添加额外启动参数:MacOS下添加参数避免崩溃:
    ch_options.add_argument("--no-sandbox")
    ch_options.add_argument("--disable-dev-shm-usage")
    ch_options.add_argument("--remote-debugging-port=9222")
    

内容的提问来源于stack exchange,提问作者Matheus Tenório

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.15 00:05:24