当我尝试解码像这样的图像时你好
“example_label.b64”文件在这里(http://ge.tt/27odGly/v/0)
我看到损坏的pdf,看起来像base64解码损坏了这个文件。
你能帮帮我吗?这里是代码示例。
import base64
with open('example_label.b64','r+') as f:
data = f.read()
f.close()
# data = data.decode('base64')
#or
data = base64.b64decode(data)
with open('example_label.pdf','w+') as f:
f.write(data)
f.close()
谢谢。
答案 0 :(得分:5)
您的写入模式应指定二进制文件,否则您可能会冒险换行,具体取决于您的平台。那是
open('example_label.pdf', 'wb')
该文件在我的系统上解码得很好,产生了校验和
$ md5sum example_label.pdf
bd9a4e16d45fe01bfc77a2af6afe1b8b example_label.pdf
$ sha1sum example_label.pdf
a9b77217793ef05f212b0619248480411f6ed4a1 example_label.pdf
并且是美国邮政服务标签,其中包含虚拟地址。