将 javascript 发送的 base64 字符串解码为 python

Decode base64 string sent by javascript to python

我正在尝试解码 Python 中由 jQuery 发送的字符串。我没有收到任何错误,但如果我尝试打开文件,我会收到编码错误。

我正在尝试解码以在 Odoo 中保存 ir.attachment,但我认为这不是问题所在。

目前,我把js发送的字符串开头的'data:image/jpeg;'去掉了。 我正在尝试以下代码:

base64.b64decode('iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAACXBIWXMAAAsSAAALEgHS3X78AAAB30lEQVRYhe1XMW6DQBCcQ24j+wdxSxVShc7OC+ImtW0JRJHCyU+IUiGQjF8Q5wXBHV1IE1rnB/YLiC5anNPpMBBwXMQjnQTL6mb27nb3YFmW4ZjQjsr+7wWcBHB0VMaUmX0A9wAMGl369AkgARDqWbxsXUDKzB4AF8C4wP+cBvdbWrYzBPAKYBH43qQOsWU7EYDBbgtSZvJI13vIRayl97FlO24N8pCT82cNP5FHwlLXFcAxs2yndBVI6C7IfAXCAvIFgCmAaxr8eQVgUzD/fJ8I+jYTbewDV3zp3yTfLYCRnsVRSTT5GZBxGfheoiCfy44anXYZkzLyEkSW7RgCuaEi5+BZMJRsqxZSrCuIyM+XEhqllYhW8ptE8LnO9jmpKmGisFXFu+R3AeAJwJ1g25YJaAIe8YNCxC1l0FQOUCXAUNgqI/A9l9JXxA2vHYHvhfI8GtV3EaOmy0BlWRQxDXxPeRA1xQkdpMysVddLRDyqIs/RKWg+bsrMTdN0rNKgOnoWJykzX2ifcvAUek6ZuaIyndd+g+pGT89iuX78Cnk7nhCJ3A8Gedc6FL6zQM/iDUW2PSSZCrs05FsBoK9IISVSZrayBcofkwpXsoiuZUVtuZmAv8TpWn4ScFwBAL4AbIiR9pT9cFoAAAAASUVORK5CYII=')

对我来说效果很好:

import base64


elem = base64.b64decode('iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAACXBIWXMAAAsSAAALEgHS3X78AAAB30lEQVRYhe1XMW6DQBCcQ24j+wdxSxVShc7OC+ImtW0JRJHCyU+IUiGQjF8Q5wXBHV1IE1rnB/YLiC5anNPpMBBwXMQjnQTL6mb27nb3YFmW4ZjQjsr+7wWcBHB0VMaUmX0A9wAMGl369AkgARDqWbxsXUDKzB4AF8C4wP+cBvdbWrYzBPAKYBH43qQOsWU7EYDBbgtSZvJI13vIRayl97FlO24N8pCT82cNP5FHwlLXFcAxs2yndBVI6C7IfAXCAvIFgCmAaxr8eQVgUzD/fJ8I+jYTbewDV3zp3yTfLYCRnsVRSTT5GZBxGfheoiCfy44anXYZkzLyEkSW7RgCuaEi5+BZMJRsqxZSrCuIyM+XEhqllYhW8ptE8LnO9jmpKmGisFXFu+R3AeAJwJ1g25YJaAIe8YNCxC1l0FQOUCXAUNgqI/A9l9JXxA2vHYHvhfI8GtV3EaOmy0BlWRQxDXxPeRA1xQkdpMysVddLRDyqIs/RKWg+bsrMTdN0rNKgOnoWJykzX2ifcvAUek6ZuaIyndd+g+pGT89iuX78Cnk7nhCJ3A8Gedc6FL6zQM/iDUW2PSSZCrs05FsBoK9IISVSZrayBcofkwpXsoiuZUVtuZmAv8TpWn4ScFwBAL4AbIiR9pT9cFoAAAAASUVORK5CYII=')

with open('test_save.jpeg', 'wb') as f:
    f.write(elem)

结果:

它回答了你的问题吗?