加载已保存的Cookie后页面未登录

时间:2019-08-14 21:03:14

标签: python selenium authentication cookies automation

我想要做的是能够登录一次并使用其中的cookie进行多次登录,直到cookie过期。在我的测试代码中,我一直在使用gmail,但我打算将代码转移到其他网站。

在python中,我已经能够在一个脚本中保存cookie,然后在一个单独的脚本中,将保存的cookie加载到我的Chrome网络驱动程序中。

但是,当我尝试刷新驱动程序时,只能再次获得登录屏幕。

我主要遵循以下简单示例: https://blog.softhints.com/python-pickle-example-cookies/

尽管如此,我还是要稍微更改一下Cookie才能消除错误:“消息:无效的参数:无效的“到期””

第一个脚本登录gmail,然后使用以下命令捕获并保存Cookie:

cookies = driver.get_cookies()
pickle.dump(cookies, open("cookies.pkl", "wb"))

下一个脚本格式化硒的cookie并将其加载到驱动程序中:

driver = driver = webdriver.Chrome()
driver.get("https://mail.google.com/mail/#inbox")

cookies = []
for item in pickle.load(open("cookies.pkl", "rb")):
    cookies.append({'name': item['name'], 'value': item['value']})
    driver.add_cookie({'name': item['name'], 'value': item['value']})

driver.refresh()

我能够按照每个步骤打印cookie,以显示它们正在保存和加载,但是在driver.refresh()之后,当我希望将其带入收件箱时,我仍然得到相同的空登录页面

0 个答案:

没有答案