base64到图像,损坏图像

时间:2017-04-10 14:22:07

标签: python python-2.7 base64

我有这段代码:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<a href="#">Not a tel</a><br/>
<a href="tel:012345789">Tel</a>

和这个base64:https://pastebin.com/MKjEdmub base64代码来自前端的画布。我已经验证了字符串与前端和后端完全相同。

如果我尝试运行代码,则说明当前的base64代码:with open("bla.png", "wb") as fh: fh.write(image.decode('base64')) 。我做了一些研究,结果发现它需要正确转换一定数量的字节,因此它需要在字符串末尾Error: Incorrect padding。在这种情况下,它需要在字符串的末尾=。当我这样做它转换得很好,但图像是腐败的(不可读)。

当我使用在线转换器时,当前的base64工作正常。当我添加==时,它也不适用于那些。

我也尝试过使用base64库中的==函数,但这也给出了同样的错误。

1 个答案:

答案 0 :(得分:1)

在您的数据上使用str.decode('base64')对我来说很好,您是否在开头删除了data:image/png;base64,标题?如果我不删除它我也会得到填充错误。您尝试过的在线工具可能会检查此常用语法并在解码前自动将其删除。