繁体   English   中英

UnicodeDecodeError:“ utf-8”编解码器无法解码位置127的字节0xd0:数据意外结束

[英]UnicodeDecodeError: 'utf-8' codec can't decode byte 0xd0 in position 127: unexpected end of data

我在解码某些字符时遇到问题,错误是这样的:

UnicodeDecodeError: 'utf-8' codec can't decode byte 0xd0 in position 127: unexpected end of data

下面是我的代码,“ response”变量是JSON

response = requests.post('LINK-TO-API', headers=headers, data=data)
result = ""
for i in response:
    result += i.decode('utf-8')

我的代码有什么问题? 谢谢

0xD00b11010000 )是表示多字节序列的UTF-8的开始的字节数中的一个。 第一个0之前的1表示序列的长度*。 第一个0之后的位是代码点编码的一部分。

基本上,响应的迭代器将两个字节的编码减少了一半。 您应先读取响应的全部内容,然后再尝试对其进行解码。 例如。

bytes_ = b''
for chunk in response:
    bytes_ += chunk
result = bytes_.decode('utf8')

*以10开头的字节表示多字节序列中的连续字节,而不是1字节编码。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM