用Python来实现Base64编码和解码

用Python来实现Base64编码和解码

       Base64是一种常见的编码和解码方式,Base64用7 bits的可打印字符来表示8-bit的二进制数据。base64在HTTP和XML上用的特别多,许多HTTP传输和email中都用到了Base64进行编码和解码。

Base64编码

       Based64 编码是把二进制数据转化为只有64个字符的过程。这64个字符分别是A-Z, a-z, 0-9, +和/

Python代码实现

       假设我们要encode一段音频,我们用如下代码进行encode。

1
2
3
import base64
mp3 = open('Sample.mp4','rb').read();
mp3_encode = base64.encodebytes(mp3);

Base64解码

       Base64解码是把可打印字符转化为二进制的过程。
       用如下代码解码。

1
base64.decodebytes(s)

总代码

1
2
3
4
5
6
import base64
mp3 = open('Sample.mp4','rb').read();
mp3_encode = base64.encodebytes(mp3);
mp3_decode = base64.decodebytes(mp3_encode)
mp3_result = open('Sample_decode.mp4', 'wb')
mp3_result.write(mp3_decode)

       计算这两个文件的MD5值
base64
       可以看到这两个文件的MD5是相同的。