悄然无声的 Blog
不是我不明白,这世界变化快!
很多年以前,曾经保存过一个页面,但发现图片并没有以文件的形式保存下来,打开页面时图片却有显示,
开始以为是js玩的花招(因为里面一大堆js跳来跳去),链接到了其它地方,调查后发现源代码里有一大段看不懂的编码,
虽然估计这段代码就是图片,受限于当时的视野,百思不得其解~ 
现在终于明白了!python的base64编码图片 - (^_^) - 安静

测试例子,把文字转成base64编码
>>> import base64
>>> ls_s='字符串文本'
>>> ls_t=base64.b64encode(ls_s) #转换文本内容到base64
>>> print ls_t
19a3+7SuzsSxvg==
>>> print base64.b64decode(ls_t) #解码
字符串文本
>>>

把图片内容转成base64编码
import base64
f=open(r'x:\1.jpg','rb') #二进制方式打开图文件
ls_f=base64.b64encode(f.read()) #读取文件内容,转换为base64编码 
f.close()

把编码文本写入一个txt文件
fw=open(r'x:\1.txt','w') #打开一个空白文本文件,准备写入
fw.write(ls_f)
fw.flush()
fw.close()

网页的表达
<html><body><img src="data:image/jpeg;base64,这里放的是上面写入的1.txt 的内容" /></body></html>
注意 image/jpeg 如果图片是其它类型的,这里也要修改; image/png、image/gif、image/bmp 等

data: URI定义于IETF标准的RFC 2397 
data: URI的基本使用格式如下: 
data:[<MIME-type>][;base64|charset=some_charset],<data> 

posted on 2010-10-04 10:21  左洸  阅读(5938)  评论(1编辑  收藏  举报