Python:通过Todataurl获得的PNG字符串转换为二进制PNG文件



todataurl方法(请参阅https://developer.mozilla.org/de/docs/web/web/pai/htmlcanvaselement/todataurl)给出了以下形式的png表示:

   "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNby
   blAAAADElEQVQImWNgoBMAAABpAAFEI8ARAAAAAElFTkSuQmCC"

如何将这种PNG字符串转换为Python 3中的二进制PNG文件?

好的,所以这是我犯的简单(也许是愚蠢的)错误。逗号之前的第一部分,即数据:Image/png; base64,例如此

import base64
with open('sample.png', 'wb') as f:
    f.write(base64.decodestring(string.split(',')[1].encode()))

对我有用。因此,您需要删除标头是一个明显的错误。但是,我仍然会将其作为答案,以防其他人像发生在我身上一样。还要查看此线程Python:base64关于填充的解码时忽略"错误的填充"错误。

最新更新