Python解析json文件报错:'utf8' codec can't decode byte 0xbb in position 0: invalid start byte

原创 2015年09月30日 10:34:14

今天尝试读一个json文件,数据为一行,字典列表形式,结果一直报错

代码

f = file('relation.json')
d = json.load(f)
报错

'utf8' codec can't decode byte 0xbb in position 0: invalid start byte


在使用Python的时候,经常会碰到这个报错,之前一直弄不清楚是什么问题,今天专门研究了一下,报错的意思大概是,无法解码,在位置0处有非法的开始字节。

了解后发现,在utf-8编码文件中BOM在文件头部,占用三个字节,用来标示该文件属于utf-8编码,现在已经有很多软件识别bom头,但是还有些不能识别bom头,比如PHP就不能识别bom头,这也是用记事本编辑utf-8编码后执行就会出错的原因了。

解决方案:

打开sublime,新建文件,选择File->save with encoding->UTF-8, 就可以了。


参考:

http://www.crifan.com/fixed_problem_for_python_valueerror_no_json_object_could_be_decoded/

http://jingyan.baidu.com/article/9f63fb91d72eb5c8410f0e44.html


解决 'utf-8' codec can't decode byte 0x8b in position 1: invalid start byte

如果自己的脚本里编码没有问题的话,要看一下设置的header
  • zhanghaipeng1989
  • zhanghaipeng1989
  • 2014-11-14 14:06:56
  • 25204

ride.py中文用户名:UnicodeDecodeError:'utf8'codec can't decode byte 0xb2 in position 9: invalid start byte

上次解决了python中文用户名的问题,最近用RF发现也有这个问题,报UTF-8的错误 错误日志: 解决方法 1、首先创建c:\Robotframework\temp\文件夹(也可以是其他非中文...
  • huashao0602
  • huashao0602
  • 2017-01-13 10:02:40
  • 3856

robotframework运行时后台报错UnicodeDecodeError

UnicodeDecodeError :'utf-8' codec can't decode byte 0xb2 in position 244:invalid 这个错误我遇到过2次,这绝对RF中一...
  • qq_29720415
  • qq_29720415
  • 2016-12-09 18:06:48
  • 3430

python 3.x + Django 读取csv文件报错:'utf-8' codec can't decode byte 0xba in position 0: invalid start byte

报错示例:
  • WJUNSING
  • WJUNSING
  • 2017-10-12 20:02:14
  • 978

UnicodeDecodeError: 'ascii' codec can't decode byte 0xb2 in position 0: ordinal not in range的解决办法

解决方法:打开C:\Python27\Lib下的 mimetypes.py 文件,找到大概256行(你可以用Notepad++的搜索功能)的 ‘default_encoding = sys.ge...
  • Scape1989
  • Scape1989
  • 2014-04-26 15:22:12
  • 6838

UnicodeDecodeError: 'utf8' codec can't decode byte 0xc4 in position 0: i报错问题

在网上搜了很多人的处理方法是 可是我自己试一了下不行,程序错是不报了,但是实际没有运行 最后,在程度的头部加了这两行就好了,中文也可以正常显示了 #!/usr/bin/env Python # c...
  • lihengfang
  • lihengfang
  • 2016-06-25 12:50:03
  • 37388

UnicodeDecodeError: 'utf8' codec can't decode byte 0xb1 in position 0: invalid start byte

在Python处理字符编码时出现如下错误: UnicodeDecodeError: 'utf8' codec can't decode byte 0xb1 in position 0: invali...
  • tao_627
  • tao_627
  • 2016-03-30 22:11:45
  • 18384

解决Python:'utf-8' codec can't decode byte 0xfc in position 14: invalid start byte

读取了一个.amc的骨骼信息文件,然后报错: 'utf-8' codec can't decode byte 0xfc in position 14: invalid start byte 解决方...
  • serena9636
  • serena9636
  • 2017-06-03 19:55:32
  • 6472

UnicodeDecodeError: 'utf-8' codec can't decode byte 0xa8 in position 怎么办

如题,我遇到了要读取csv结果发生: UnicodeDecodeError: 'utf-8' codec can't decode byte 0xa8 in position 2987: inval...
  • u011573054
  • u011573054
  • 2017-02-06 22:06:03
  • 11026

【转】UnicodeDecodeError: 'utf-8' codec can't decode byte 0xc7 in position 1: invalid continuation 汉字编码

原文地址: http://ir.hit.edu.cn/~taozi/bianma.htm   如果在python 3里面碰到下面的Error message: UnicodeDecodeError: ...
  • u011350122
  • u011350122
  • 2016-04-19 18:11:55
  • 27901
收藏助手
不良信息举报
您举报文章:Python解析json文件报错:'utf8' codec can't decode byte 0xbb in position 0: invalid start byte
举报原因:
原因补充:

(最多只允许输入30个字)