Python base64解码TypeError: Incorrect padding错误处理

本网站用的阿里云ECS,推荐大家用。自己搞个学习研究也不错
Python 自带的base64库,在解码base64字符串的时候抛异常 TypeError: Incorrect padding。
 
代码如下:

>>> b=’5paw5Lqn5ZOB55qE5biC5Zy6566h55CGMWk’
>>> base64.b64decode(b)
Traceback (most recent call last):
  File “”, line 1, in
  File “D:\Python27\Lib\base64.py”, line 76, in b64decode
    raise TypeError(msg)
TypeError: Incorrect padding

http://stackoverflow.com/questions/2941995/python-ignore-incorrect-padding-error-when-base64-decoding找到解决办法。原理没有看明白,先用着再说。

解决办法如下

lens = len(strg)
lenx = lens – (lens % 4 if lens % 4 else 4)
try:
    result = base64.decodestring(strg[:lenx])
except:
  pass

其中strg是需要解码的base64字符串

《Python核心编程 第二版》.(Wesley J. Chun ).[高清PDF中文版] http://www.linuxidc.com/Linux/2013-06/85425.htm

《Python开发技术详解》.( 周伟,宗杰).[高清PDF扫描版+随书视频+代码] http://www.linuxidc.com/Linux/2013-11/92693.htm

Python脚本获取Linux系统信息 http://www.linuxidc.com/Linux/2013-08/88531.htm

Ubuntu下用Python搭建桌面算法交易研究环境 http://www.linuxidc.com/Linux/2013-11/92534.htm

Python 的详细介绍请点这里
Python 的下载地址请点这

未经允许不得转载:演道网 » Python base64解码TypeError: Incorrect padding错误处理

赞 (0)
分享到:更多 ()

评论 0

评论前必须登录!

登陆 注册