from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.chrome.options import Options
import time
chrome_options = Options()
chrome_options.add_argument("user-data-dir=C:\\Users\\My Name\\AppData\\Local\\Google\\Chrome\\User Data\\Profile 12")
chrome_options.add_argument("--start-maximized")
chrome_options.add_argument("profile-directory=Profile 12")
driver = webdriver.Chrome(options=chrome_options)
driver.get("https://www.example.com")
我尝试了这段代码,但它没有打开我想要的配置文件,而是打开一个普通的配置文件
代码存在一些问题,导致无法使用正确的 Chrome 配置文件。
错误:
-
profile-directory
用法错误: 虽然chrome_options.add_argument("profile-directory=Profile 12")
看起来合理,但 Chrome 选项并不直接接受profile-directory
参数。 -
路径问题:
确保
user-data-dir
路径中的空格没有问题。最好用原始字符串或转义反斜杠来处理路径中的空格。
解决方案:
-
合并路径参数:
不需要单独指定
profile-directory
。user-data-dir
已经包含了配置文件路径信息。 -
使用原始字符串或转义反斜杠:
为了避免路径中的空格出现问题,建议使用原始字符串 (例如,
r"C:\..."
) 或使用反斜杠转义空格 (例如,C:\\Users\\My Name\\...
)。
以下是修正后的代码:
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.chrome.options import Options
import time
chrome_options = Options()
# 使用原始字符串避免路径问题
chrome_options.add_argument(r"user-data-dir=C:\Users\My Name\AppData\Local\Google\Chrome\User Data")
chrome_options.add_argument("--profile-directory=Profile 12") # 使用正确的参数名称
chrome_options.add_argument("--start-maximized")
driver = webdriver.Chrome(options=chrome_options)
driver.get("https://www.example.com")
确保以下几点:
-
"Profile 12" 存在:
确认 "Profile 12" 文件夹存在于指定的
user-data-dir
路径下。 - Chrome 版本兼容: 使用与你的 Chrome 浏览器版本兼容的 ChromeDriver。
修改后,代码应该能成功打开你指定的 Chrome 配置文件。
标签:python,google-chrome,selenium-webdriver,selenium-chromedriver From: 78775528