手机
当前位置:查字典教程网 >脚本专栏 >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使用ctypes模块调用windowsapi获取系统版本示例

python三元运算符实现方法

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

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

Python获取当前时间的方法

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

python脚本实现查找webshell的方法

python3.0 字典key排序

python生成指定长度的随机数密码

python使用rsa加密算法模块模拟新浪微博登录

精品推荐
分类导航