TypeError:bytes类型的对象不可JSON序列化-python 3-尝试发布base64图像数据
我在尝试将数据转换为json以发布请求后收到此错误 TypeError:类型为“bytes”的对象不可JSON序列化 我的代码TypeError:bytes类型的对象不可JSON序列化-python 3-尝试发布base64图像数据,json,python-3.x,Json,Python 3.x,我在尝试将数据转换为json以发布请求后收到此错误 TypeError:类型为“bytes”的对象不可JSON序列化 我的代码 dict_data: dict = { 'img': base64.b64encode(urlopen(obj['recognition_image_path']).read()) } json_data: str = json.dumps(dict_data) 在尝试将数据转换为json时收到错误后,我从url读取图像,将其转换为base64。 请帮助您需要首先
dict_data: dict = {
'img': base64.b64encode(urlopen(obj['recognition_image_path']).read())
}
json_data: str = json.dumps(dict_data)
在尝试将数据转换为json时收到错误后,我从url读取图像,将其转换为base64。
请帮助您需要首先通过调用
.decode
转换为字符串
,因为您无法在不知道编码的情况下对字节
进行JSON序列化
(base64.b64encode
返回一个字节
,而不是字符串
)
导入base64
从urllib.request导入urlopen
导入json
dict_数据:dict={
'img':base64.b64encode(urlopen(obj['recognition\u image\u path')).read()).decode('utf8')
}
json_数据:str=json.dumps(dict_数据)
编辑:重写答案以解决实际问题,编码/解码对不起,我在前8次左右把这个答案搞砸了。我想现在没事了。。。