首页 > 解决方案 > 使用 Chrome 驱动程序保存 google 登录

问题描述

嘿,我做了一个在谷歌上登录的简短脚本。每次都必须登录,因为信息没有保存。有没有办法保存登录信息以避免每次都登录但只有在身份验证过期时才登录?

我会做这样的事情:

driver = webdriver.Chrome(chrome_options=opt, executable_path=r'')
driver.get('https://www.gmail.com')
form = driver.find_element_by_id("identifierId")

if form==None:
   #do something else
else:
     login()

但不知道如何保存令牌。

谢谢!

标签: pythonseleniumauthenticationgmail

解决方案


您的登录信息(如 cookie)存储在 chrome 配置文件中。

这样可以避免重新登录提示。使用您用于登录 gmail 的默认配置文件。

user-data-dir 将 profile 视为 default ,您不必指定 . 如果它是其他东西通过 profile-directory 参数指定它

了解配置文件路径的步骤:

打开:地址栏中的 chrome://version

在此处输入图像描述

现在使用这个:

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

笔记; 你应该只给直到用户数据不需要指定用户数据\默认

更新:

将用户数据文件夹完全复制到例如 c:\tmp\newdir

打开复制的用户数据(newdir)并搜索名为 Default 的文件夹。这是配置文件文件夹。

现在使用这个:

chrom_options.add_argument("user-data-dir=c:\\tmp\\newdir")

推荐阅读