requests中会话cookie的增加、更新、删除

在requests库中可以定制会话级别的cookies,以保证整个通信过程中都可以使用到cookies


【增加】

#coding:utf-8
import requests
s = requests.session()
s.cookies.set('mycookie','value') #设置会话cookies
r=s.get('https://www.baidu.com')
print s.cookies.get_dict()#输出cookies
 
以上代码输出如下:
{'mycookie': 'value', '__bsi': '13551623790891227192_00_8_N_N_0_0303_C02F_N_N_N_0', 'BDORZ': '27315'}
其中第一个便是我们设置的cookie


【更新

# -*-coding:utf-8 -*-
import requests

s=requests.session()
s.get('https://www.baidu.com')
print s.cookies.get_dict()#更新前
c = requests.cookies.RequestsCookieJar()#定义一个cookie对象
c.set('cookie-name', 'cookie-value')#增加cookie的值
s.cookies.update(c)#更新s的cookie
print s.cookies.get_dict()#更新后
以上代码输入如下:

{'__bsi': '16346916021544028282_00_8_N_N_1_0303_C02F_N_N_N_0', 'BDORZ': '27315'}
{'__bsi': '16346916021544028282_00_8_N_N_1_0303_C02F_N_N_N_0', 'BDORZ': '27315', 'cookie-name': 'cookie-value'}


【全部删除

# -*-coding:utf-8 -*-
import requests

s=requests.session()
s.get('https://www.baidu.com')
print s.cookies.get_dict()#删除前
s.cookies.clear()#删除cookies,也可以使用s.cookies=None的方式将所有cookies删除
print s.cookies.get_dict()#删除后

以上代码输入如下:

{'__bsi': '12727356503341350373_00_7_N_N_1_0303_C02F_N_N_N_0', 'BDORZ': '27315'}
{}

【指定键删除】(巧妙使用None删除指定键

# -*-coding:utf-8 -*-
import requests
s=requests.session()
try:
    s.get('https://www.baidu.com')
    print s.cookies.get_dict()#删除前

    s.cookies.set('BDORZ',None)#删除cookiesBDORZ的值
    print s.cookies.get_dict()#删除后
except Exception,e:
    print e
以上代码输入如下:

{'__bsi': '13898242271953228160_00_7_N_N_0_0303_C02F_N_N_N_0', 'BDORZ': '27315'}
{'__bsi': '13898242271953228160_00_7_N_N_0_0303_C02F_N_N_N_0'}

  • 7
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值