python对于gbk的解码问题
=?gbk?B?PHNlcnZpY2VAZWxpbi50cmFjZW1vbi5jb20+?=
对于类似这样的字符串,我好像用了网上几种解码方式都不行啊,我用的是python3.2
send_mail_list = email.header.decode_header(msg.get("From"))
send_mail = send_mail_list[0][0].decode(send_mail_list[0][1])
这样解不开,然后用了下面哪种也解不开
h = email.Header.Header(msg.get("From"))
send_mail = email.Header.decode_header(h)
因为提示:AttributeError: 'module' object has no attribute 'Header'
我已经import email了
[解决办法]
说的内容是:
=?gbk?B?PHNlcnZpY2VAZWxpbi50cmFjZW1vbi5jb20+?=
前面:=?gbk?B? -》说明字符是先经过gbk编码的,同时也起到分隔的作用
后面的是邮件内容的一项:PHNlcnZpY2VAZWxpbi50cmFjZW1vbi5jb20+?=
>>> import base64>>> print base64.b64decode('PHNlcnZpY2VAZWxpbi50cmFjZW1vbi5jb20+?=')<service@elin.tracemon.com>>>>
[解决办法]
Python 3.2.3 (default, Apr 11 2012, 07:15:24) [MSC v.1500 32 bit (Intel)] on win32Type "copyright", "credits" or "license()" for more information.>>> import base64>>> a = b'=?gbk?B?PHNlcnZpY2VAZWxpbi50cmFjZW1vbi5jb20+?='>>> b = base64.b64decode(a)>>> print(b)b'\x81\xb9\x01<service@elin.tracemon.com>'>>>