python 之 json2

1.安装

下载 simplejson-2.6.1.tar

命令: tar -xf simplejson-2.6.1.tar 解压

然后:cd simplejson-2.6.1

安装命令:python setup.py install

安装完成


2.程序,注意编码问题

import simplejson

def read_jsonfile(file):

     fd = open(file, 'r')

    ls = fd.readline()

    ls = ls.decode('gbk', 'ignore')  # 注意

    str = simplejson.loads(ls, encoding='gbk')

    print str["feature"]["url"]

    fd.close()


注意:

编码问题很关键,如果不制定gbk,会提示如下错误:

Traceback (most recent call last):
  File "./json_lp.py", line 16, in <module>
    read_jsonfile("gaohui.out")
  File "./json_lp.py", line 11, in read_jsonfile
    str = simplejson.loads(ls, encoding='gbk')
  File "/home/work/local/python/lib/python2.5/site-packages/simplejson/__init__.py", line 468, in loads
    return cls(encoding=encoding, **kw).decode(s)
  File "/home/work/local/python/lib/python2.5/site-packages/simplejson/decoder.py", line 406, in decode
    obj, end = self.raw_decode(s)
  File "/home/work/local/python/lib/python2.5/site-packages/simplejson/decoder.py", line 424, in raw_decode
    obj, end = self.scan_once(s, idx=_w(s, idx).end())
UnicodeDecodeError: 'utf8' codec can't decode bytes in position 1-2: illegal multibyte sequence

你可能感兴趣的:(json,python,File,Module,encoding,Codec)