2009年9月27日星期日
汉字url编码解码解决
根据rfc 2396规定,URL保留字符为reserved= ";" "/" "?" ":" "@" "&" "=" "+" "$" ",",但是这些字符并不是在所有类型的URL中都保留不转化,所以要求使用该函数的时候在转化不同的URL时设置不同的保留字符,其中在任意部分都不转化的字符为:大小写字母,数字, '_','.','-' ,对于汉字,也可以使用,但要加上相应的编码,比如quote(u'蟒蛇'.encode('gb2312')) ,该函数会将所有非保留的字符转化成%xx这样的形式,其中xx为两位的十六进制数。
对于这样的编码解码,用python比较简单
>>> import urllib
>>> print urllib.unquote('%BA%BA%D7%D6+%B1%E0%C2%EB')
就可以
linux下
>>> import urllib
>>> print urllib.unquote('%BA%BA%D7%D6+%B1%E0%C2%EB').decode('GBK')
对于这样的编码解码,用python比较简单
>>> import urllib
>>> print urllib.unquote('%BA%BA%D7%D6+%B1%E0%C2%EB')
就可以
linux下
>>> import urllib
>>> print urllib.unquote('%BA%BA%D7%D6+%B1%E0%C2%EB').decode('GBK')
标签: URL 编码 解码
订阅 博文 [Atom]