Python base64 decode incorrect padding error solution, base64padding
The following error is returned when the base64.decodestring method of python performs base64 decoding:
Copy codeThe Code is as follows:
Traceback (most recent call last ):
File "/export/www/outofmemory.cn/controllers/user.py", line 136, in decryptPassword
EncryptPwd = base64.b64decode (encryptPwd)
File "/usr/lib/python2.7/base64.py", line 76, in b64decode
Raise TypeError (msg)
TypeError: Incorrect padding
This is also a pitfall of python. The solution to this problem is very simple. You can complete the equal sign for the string decoded by base64, as shown in the following code:
Copy codeThe Code is as follows:
Def decode_base64 (data ):
"Decode base64, padding being optional.
: Param data: Base64 data as an ASCII byte string
: Returns: The decoded byte string.
"""
Missing_padding = 4-len (data) % 4
If missing_padding:
Data + = B '=' * missing_padding
Return base64.decodestring (data)