用Python解码JSON中的base64图像

用Python解码JSON中的base64图像,python,json,base64,Python,Json,Base64,我从前端接收到base64中的一个图像,并将其转换为JSON文件,需要使用OpenCV拍摄图像并解码,其中的JSON是: { 'photo': "b'/9j/4AAQSkZJR...(continue)" } 代码是 obj = json.loads(json.dumps(event)) obj = obj['foto'] obj = bytes(obj,'utf-8') obj_d = base64.decodebytes(obj) print(type(ob

我从前端接收到base64中的一个图像,并将其转换为JSON文件,需要使用OpenCV拍摄图像并解码,其中的JSON是:

{
     'photo': "b'/9j/4AAQSkZJR...(continue)"
}
代码是

obj = json.loads(json.dumps(event))
obj = obj['foto']
obj = bytes(obj,'utf-8')

obj_d = base64.decodebytes(obj)
print(type(obj_d))

img_buffer = np.frombuffer(obj_d, dtype=np.uint8)
print(img_buffer)
img = cv2.imdecode(img_buffer, flags=cv2.IMREAD_COLOR)
print(img.shape)
收到的错误是,AttributeError:“非类型”对象没有属性“形状”


当我在Python中用base64编码和解码图像时,我没有问题。

在我以前编写的JSON版本(这里没有错误)中,错误在b'…',我在前端或其他方法中删除了它,并且可以正常工作。

人们需要使用调试器,它帮助很大。Pycharm/Vscode是免费的,并且有很好的调试器。您可能需要
eval()
字符串,因为它以
b'.'
开头,但是您知道安全性这是否回答了您的问题?在JSON中您有“photo”,但在代码中您尝试读取
obj['foto']
。这可能是问题所在。JSON有obj['foto'],我写了一个以前的版本,错误是b'…',删除了这个,可以工作了,谢谢你的帮助