手机
当前位置:查字典教程网 >脚本专栏 >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使用urllib2模块获取gravatar头像实例

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

python的常见命令注入威胁

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

Pyramid将models.py文件的内容分布到多个文件的方法

python实现文件名批量替换和内容替换

Python常用正则表达式符号浅析

python逐行读取文件内容的三种方法

python脚本实现查找webshell的方法

Python GAE、Django导出Excel的方法

精品推荐
分类导航