json.decoder.JSONDecodeError: Unexpected UTF-8 BOM (decode using utf-8-sig): line 1 column 1 (char 0)

前端之家收集整理的这篇文章主要介绍了json.decoder.JSONDecodeError: Unexpected UTF-8 BOM (decode using utf-8-sig): line 1 column 1 (char 0)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

在解析json时遇到错误提示

json.decoder.JSONDecodeError: Unexpected UTF-8 BOM (decode using utf-8-sig): line 1 column 1 (char 0)

原因分析

text包含BOM字符

解决方法

将BOM头去掉

代码

with open('886912455990.txt','r',encoding='utf-8') as f:
    data=f.read()
    
if data.startswith(u'\ufeff'):
    data = data.encode('utf8')[3:].decode('utf8')
print(json.loads(data))

Bom字符阅读:

https://baike.baidu.com/item/BOM/2790401?fr=aladdin

猜你在找的Python相关文章