Selenium添加访问cookie实现自动登陆

有时须要在webDriver访问网站时,附带cookie实现免登录访问,如下是一个简单的实现方式。python

登陆并保存cookie

'''
前面部分代码用于填写登陆信息并登陆
'''
# 获取cookie并经过json模块将dict转化成str
dictCookies = self.browser.get_cookies()
jsonCookies = json.dumps(dictCookies)
# 登陆完成后,将cookie保存到本地文件
with open('cookies.json', 'w') as f:
    f.write(jsonCookies)

读取cookie实现免登录访问

# 初次创建链接,随后方可修改cookie
self.browser.get('http://xxxx.com')
# 删除第一次创建链接时的cookie
self.browser.delete_all_cookies()
# 读取登陆时存储到本地的cookie
with open('cookies.json', 'r', encoding='utf-8') as f:
    listCookies = json.loads(f.read())
for cookie in listCookies:
    self.browser.add_cookie({
        'domain': '.xxxx.com',  # 此处xxx.com前,须要带点
        'name': cookie['name'],
        'value': cookie['value'],
        'path': '/',
        'expires': None
    })
# 再次访问页面,即可实现免登录访问
self.browser.get('http://xxx.com')
相关文章
相关标签/搜索