初学base64编码,做个笔记
首先,写一个简单的例子:
将一个字符串编码然后解码,这个例子来自于https://docs.python.org/2/library/base64.html
>>> import base64
>>> encoded = base64.b64encode('data to be encoded')
>>> encoded
'ZGF0YSB0byBiZSBlbmNvZGVk'
>>> data = base64.b64decode(encoded)
>>> data
'data to be encoded'
需求: 将一幅图片文件转换成base64编码,然后解码
#import os
import base64
#这里我使用spyder IDE, 图片存储在pythonDemo文件夹下
#查看当前路径,
# os.getcwd()
#将路径修改到图片所在的目录下
#os.chdir('xxx/xx/pythonDemo')
#打开文件,图片名称为11.jpg , 以二进制形式读出
r_data = open('11.jpg', 'rb')
data_string = r_data.read()
# 用base64编码
encode = base64.encodestring(data_string)
encoded2 = base64.b64encode(data_string)
# print encode
# 解码
decode = base64.decodestring(encode)
decoded2 = base64.b64decode(encoded2)
#写入文件
w_data = open('11w.dat','wb')
w_data.write(decode)
w_data2 = open('112.dat','wb')
w_data2.write(decoded2)