如何添加cookie自动登录博客园
#coding=utf-8 from selenium import webdriver import time driver = webdriver.Chrome() driver.get("https://www.cnblogs.com/yye2010") # 获得cookie信息 cookie= driver.get_cookies() # 添加cookie c1 = {u'domain': u'.cnblogs.com', u'name': u'.CNBlogsCookie', u'value': u'XXX', u'expiry': 1521872369, u'path': u'/', u'httpOnly': True, u'secure': False} c2 = {u'domain': u'.cnblogs.com', u'name': u'.Cnblogs.AspNetCore.Cookies', u'value': u'XXX', u'expiry': 1521872369, u'path': u'/', u'httpOnly': True, u'secure': False} driver.add_cookie(c1) # 添加2个值 driver.add_cookie(c2) time.sleep(3) driver.refresh() print cookie
name:cookie的名称
value:cookie对应的值,动态生成的
domain:服务器域名
expiry:Cookie有效终止日期
path:Path属性定义了Web服务器上哪些路径下的页面可获取服务器设置的Cookie
httpOnly:防脚本攻击
secure:在Cookie中标记该变量,表明只有当浏览器和Web Server之间的通信协议为加密认证协议时,
浏览器才向服务器提交相应的Cookie。当前这种协议只有一种,即为HTTPS
如果获取 cookie呢?使用fiddler工具,登录博客园成功后会增加二条cookie
有几点需要注意:
1.登录时候要勾选下次自动登录按钮。
2.add_cookie()只添加name和value,对于博客园的登录是不成功。
3.本方法并不适合所有的网站,一般像博客园这种记住登录状态的才会适合