使用python和selenium在m上使用默认用户配置文件打开chrome

2024-10-01 11:30:33 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图让Selenium打开Chrome,就像我自己打开一样,也就是说,我应该像Facebook一样登录我的账户。在

我有以下代码:

def startChrome():
    options = webdriver.ChromeOptions() 
    options.add_argument("user-data-dir=/Users/alexiseggermont/Library/Application Support/Google/Chrome/Default/")
    driver = webdriver.Chrome(chrome_options=options)
    driver.set_page_load_timeout(60)
    return driver

driver = startChrome()
url = 'https://www.facebook.com'
driver.get(url)

不过,这让我在没有登录的情况下登陆Facebook。我已经检查了chrome://version,并且配置文件的URL实际上是正确的。我做错什么了?在

使用Python3,Chrome版本63.0.3239.84,MacOS High Sierra


Tags: 代码addurlfacebookdefdriverselenium账户
2条回答

从路径末尾删除Default/

options.add_argument("user-data-dir=/Users/alexiseggermont/Library/Application Support/Google/Chrome/")

在PC上,它通常类似于:

options.add_argument('user-data-dir=C:/Users/{USERNAME}/AppData/Local/Google/Chrome/User Data')

你需要检查你是否有chromedriver和chrome的兼容版本-最简单的方法就是检查两个版本是否都是最新的。在

如果它在打开时立即崩溃,请选中the chromedriver help page。看看能不能禁用所有扩展。在

除了EnergyNumbers的回答,你还必须确保在启动脚本之前已经退出了chrome。在

在我的例子中,我经常得到错误Chrome failed to start: exited abnormally (unknown error: DevToolsActivePort file doesn't exist)

但当我在启动脚本之前退出chrome时,这一点立即消失了。显然,同一配置文件的两个实例不能同时打开。在

相关问题 更多 >