toDataURL 方法(参见例如https://developer.mozilla.org/de/docs/Web/API/HTMLCanvasElement/toDataURL)给出了以下形式的 PNG 的字符串表示:
"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNby
blAAAADElEQVQImWNgoBMAAABpAAFEI8ARAAAAAElFTkSuQmCC"
Run Code Online (Sandbox Code Playgroud)
如何在 python 3 中将这样的 PNG 字符串转换为二进制 PNG 文件?
好吧,这是我犯的一个简单(也许是愚蠢的)错误。逗号前的第一部分,即 data:image/png;base64 必须去掉,像这样
import base64
with open('sample.png', 'wb') as f:
f.write(base64.decodestring(string.split(',')[1].encode()))
Run Code Online (Sandbox Code Playgroud)
对我有用。因此,您需要删除标题是一个明显的错误。但是我仍然会将此作为答案,以防它发生在其他人身上,就像发生在我身上一样。另请查看此线程Python: Ignore 'Incorrect padding' error when base64 解码有关填充。
| 归档时间: |
|
| 查看次数: |
1075 次 |
| 最近记录: |