让python的Cookie.py模块支持冒号做key的方法


Posted in Python onDecember 28, 2010

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

很简单,修改一下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 相关文章推荐
Python3基础之基本数据类型概述
Aug 13 Python
Python实现生成简单的Makefile文件代码示例
Mar 10 Python
Python切片操作实例分析
Mar 16 Python
pandas apply 函数 实现多进程的示例讲解
Apr 20 Python
Tensorflow 同时载入多个模型的实例讲解
Jul 27 Python
python gensim使用word2vec词向量处理中文语料的方法
Jul 05 Python
Django 开发环境与生产环境的区分详解
Jul 26 Python
用Python批量把文件复制到另一个文件夹的实现方法
Aug 16 Python
python字符串常用方法及文件简单读写的操作方法
Mar 04 Python
Selenium使用Chrome模拟手机浏览器方法解析
Apr 10 Python
Pycharm中使用git进行合作开发的教程详解
Nov 17 Python
在python中实现导入一个需要传参的模块
May 12 Python
python封装对象实现时间效果
Apr 23 #Python
python下函数参数的传递(参数带星号的说明)
Sep 19 #Python
Python 元类使用说明
Dec 18 #Python
Python3 入门教程 简单但比较不错
Nov 29 #Python
Python2.5/2.6实用教程 入门基础篇
Nov 29 #Python
python 快速排序代码
Nov 23 #Python
python 文件和路径操作函数小结
Nov 23 #Python
You might like
php下一个阿拉伯数字转中文数字的函数
2007/07/16 PHP
php实现简单洗牌算法
2013/06/18 PHP
浅谈PHP的数据库接口和技术
2016/12/09 PHP
curl 出现错误的调试方法(必看)
2017/02/13 PHP
highchart数据源纵轴json内的值必须是int(详解)
2017/02/20 PHP
利用Laravel事件系统如何实现登录日志的记录详解
2017/05/20 PHP
PHP cookie与session会话基本用法实例分析
2019/11/18 PHP
JS setCapture 区域外事件捕捉
2010/03/18 Javascript
怎么清空javascript数组
2013/05/11 Javascript
JS正则获取HTML元素的方法
2017/03/31 Javascript
Javascript中八种遍历方法的执行速度深度对比
2017/04/25 Javascript
Node.js Buffer用法解读
2018/05/18 Javascript
vue中的计算属性实例详解
2018/09/19 Javascript
学习jQuery中的noConflict()用法
2018/09/28 jQuery
Python库urllib与urllib2主要区别分析
2014/07/13 Python
python队列Queue的详解
2019/05/10 Python
python3.6根据m3u8下载mp4视频
2019/06/17 Python
解决在keras中使用model.save()函数保存模型失败的问题
2020/05/21 Python
Python生成器generator原理及用法解析
2020/07/20 Python
中国专业的综合网上购物商城:京东
2016/08/02 全球购物
英国领先的酒类网上商城:TheDrinkShop
2017/03/16 全球购物
北美三大旅游网站之一:Travelocity
2017/08/12 全球购物
20岁生日感言
2014/01/13 职场文书
文案策划求职信
2014/03/18 职场文书
学生安全责任书
2014/04/15 职场文书
环卫工人先进事迹材料
2014/06/02 职场文书
住院医师规范化培训实施方案
2014/06/12 职场文书
村委会贫困证明范文
2014/09/21 职场文书
承租经营合作者协议书
2014/10/01 职场文书
单位委托函范文
2015/01/29 职场文书
2016年九九重阳节活动总结
2016/04/01 职场文书
Python编程源码报错解决方法总结经验分享
2021/10/05 Python
面试中canvas绘制图片模糊图片问题处理
2022/03/13 Javascript
Python实现Excel文件的合并(以新冠疫情数据为例)
2022/03/20 Python
《雀魂PONG☆》4月1日播出 PV角色设定情报
2022/03/20 日漫
Spring Boot实现文件上传下载
2022/08/14 Java/Android