如何以其他用户账户启动ChromeDriver?Selenium报错求助
解决Selenium ChromeDriver无法创建默认配置目录的问题
错误核心原因
报错selenium.common.exceptions.WebDriverException: Message: unknown error: cannot create default profile directory,大概率是这几个问题导致:
- 你指定的Chrome数据目录路径错误(之前写的
Roaming目录不对) - 当前运行Python的用户,没有目标用户目录的读写权限
- Chrome进程未完全关闭,导致目录被锁定占用
具体解决步骤
- 修正目录路径:Windows系统中Chrome的用户数据目录在
AppData\Local下,而非Roaming。正确路径格式为:C:\Users\目标用户名\AppData\Local\Google\Chrome\User Data - 配置目录权限:右键目标
User Data文件夹 → 属性 → 安全 → 编辑 → 添加当前运行Python的用户账号,勾选「读取」「写入」「修改」权限,保存后生效。 - 清理Chrome进程:打开任务管理器,结束所有
chrome.exe进程,避免目录被占用锁定。 - 正确编写代码:用原始字符串(加
r前缀)避免转义问题,还可以指定具体配置文件避免冲突:from selenium import webdriver chrome_options = webdriver.ChromeOptions() # 替换为你的目标用户路径 chrome_options.add_argument(r"user-data-dir=C:\Users\目标用户名\AppData\Local\Google\Chrome\User Data") # 可选:指定具体配置文件(比如Profile 1,根据实际情况修改) chrome_options.add_argument("--profile-directory=Profile 1") driver = webdriver.Chrome(options=chrome_options) driver.maximize_window() driver.get("你的目标URL") - 备选方案(权限问题无法解决时):复制目标用户的
User Data文件夹到当前用户有权限的路径(比如C:\MyChromeProfiles\AnotherUser),然后代码里指向这个复制后的目录。
内容的提问来源于stack exchange,提问作者Harris Ahmed
相关产品推荐
相关产品推荐

