3

你好,当我尝试像这样解码图像时

“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()

谢谢你。

4

1 回答 1

5

您的写入模式应指定二进制文件,否则您将面临换行符转换的风险,具体取决于您的平台。那是

open('example_label.pdf', 'wb')

该文件在我的系统上解码得很好,产生的校验和

$ md5sum example_label.pdf 
bd9a4e16d45fe01bfc77a2af6afe1b8b  example_label.pdf
$ sha1sum example_label.pdf 
a9b77217793ef05f212b0619248480411f6ed4a1  example_label.pdf

并且是一个带有虚拟地址的美国邮政服务标签。

于 2013-11-13T02:19:25.210 回答