分析:
1.我们首先拿到的是str类型的一串cookie,我们最终需要的是dict类型的cookie。我们要做的就是转换
2.通过分析我们可以知道,一个cookie包含多个字段,每个字段之间通过<;和空格>组合进行分割
3.每个字段包含键和值两部分,他们通过<=>进行分割
4.最后我们通过字符串的split函数把字符串处理成希望的dict

示例代码:

cookies_str="PHPSESSID=r9r8cgomqe61q3ndu6e0; GUIDE_MAP:=1594190653;Hm_lvt_83efb6da7f0d183ee8ad0d78f0=1594115801,1594170658,1594189409,1594190655; acw_tc=2760825615941934039125236e771ed80ecc64edf96b346e78c; Hm_lpvt_83efb6da7f0d18d3ee8ad0d78f0=1594194025"

cookies_dict={}
for cookie in cookies_str.split('; '):
    cookies_dict[cookie.split('=')[0]]=cookie.split('=')[-1]
    
print(cookies_dict)

执行结果:

{'PHPSESSID': 'r9r8cgomqe61q3ndu6e0', 'GUIDE_MAP:': '1594115801,1594170658,1594189409,1594190655', 'acw_tc': '2760825615941934039125236e771ed80ecc64edf96b346e78c', 'Hm_lpvt_83efb6da7f0d18d3ee8ad0d78f0': '1594194025'}

由于遍历以后需要对数据的处理可以一步完成,所以我们可以简写为:

cookies_str="PHPSESSID=r9r8cgomqe61q3ndu6e0; GUIDE_MAP:=1594190653;Hm_lvt_83efb6da7f0d183ee8ad0d78f0=1594115801,1594170658,1594189409,1594190655; acw_tc=2760825615941934039125236e771ed80ecc64edf96b346e78c; Hm_lpvt_83efb6da7f0d18d3ee8ad0d78f0=1594194025"
  
cookies_dict = {cookie.split('=')[0]:cookie.split('=')[-1] for cookie in cookies_str.split(';')}
print(cookies_dict)

标签: 暂无标签