让python的Cookie.py模块支持冒号做key的方法
2010-12-28 22:33
2331 查看
#!/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的Cookie.py模块支持:冒号做key
- 利用标准库fractions模块让Python支持分数类型的方法详解
- 在Python安装MySQL支持模块的方法
- python hash模块用key加密方法
- python学习四:import模块方法、可变参数、字典key判断、版本信息获取、列表解析、
- 在Python安装MySQL支持模块的方法
- 零基础学python-16.5 模块间全局变量的修改以及其他访问全局变量的方法
- python模块:网络协议和支持
- 如何制作 Python 安装模块(setup.py)
- Python入门(六)——self,类,方法,__init__,类对象,类变量,文件操作,判断回文,pickle模块用法
- nginx使用ssl模块配置支持HTTPS访问的方法
- Python os模块中的isfile()和isdir()函数均返回false问题解决方法
- python os.path模块常用方法详解
- python简单爬虫(上):urllib,urllib2与cookielib三个模块
- python 中的selenium模块使用方法
- 用python实现从1加到100的三种方法: for循环,while循环,导入模块法
- [Python] io 模块之 open() 方法
- Python模块安装方法
- Python安装模块出错(ImportError: No module named setuptools)解决方法