手机
当前位置:查字典教程网 >脚本专栏 >python >让python的Cookie.py模块支持冒号做key的方法
让python的Cookie.py模块支持冒号做key的方法
摘要:为了做好兼容性,只能选择兼容:冒号。很简单,修改一下Cookie.Morsel复制代码代码如下:#!/usr/bin/python#-*-c...

为了做好兼容性,只能选择兼容:冒号。

很简单,修改一下Cookie.Morsel

复制代码 代码如下:

#!/usr/bin/python

# -*- coding: utf-8 -*-

"""MorselHook, fix Cookie.CookieError: Illegal key value: ys-tab:entrance:e

"""

import Cookie

import string

_Morsel = Cookie.Morsel

class MorselHook(_Morsel):

"""

>>> import inspect

>>> (inspect.getargspec(MorselHook.set)[3])[0]

"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!#$%&'*+-.^_`|~:"

>>> cookie = Cookie.SimpleCookie()

>>> cookie.load("ys-tab:entrance:e=abc; webpy_session_id=75eb60dcc83e2d902146af0bb7f47afe61fbd2b2")

>>> print cookie

Set-Cookie: webpy_session_id=75eb60dcc83e2d902146af0bb7f47afe61fbd2b2;

Set-Cookie: ys-tab:entrance:e=abc;

"""

def set(self, key, val, coded_val, LegalChars=Cookie._LegalChars+':', idmap=string._idmap, translate=string.translate):

return super(MorselHook, self).set(key, val, coded_val, LegalChars, idmap, translate)

Cookie.Morsel = MorselHook

# 在你需要使用到Cookie的地方先让上面的代码执行一遍

if __name__ == '__main__':

import doctest

doctest.testmod()

【让python的Cookie.py模块支持冒号做key的方法】相关文章:

python爬取网站数据保存使用的方法

python使用mysqldb连接数据库操作方法示例详解

python每次处理固定个数的字符的方法总结

python三元运算符实现方法

python的常见命令注入威胁

Python获取当前时间的方法

python和shell变量互相传递的几种方法

Python调用C/C++动态链接库的方法详解

用python + openpyxl处理excel2007文档思路以及心得

python的正则表达式re模块的常用方法

精品推荐
分类导航