Chinaunix首页 | 论坛 | 博客
  • 博客访问: 328986
  • 博文数量: 32
  • 博客积分: 822
  • 博客等级: 准尉
  • 技术积分: 388
  • 用 户 组: 普通用户
  • 注册时间: 2011-05-27 13:55
文章分类

全部博文(32)

文章存档

2019年(2)

2017年(4)

2016年(9)

2015年(1)

2014年(1)

2012年(2)

2011年(13)

我的朋友

分类: Python/Ruby

2016-05-24 19:51:38

用Json.loads出来的内容是Unicode格式,写了一个简单的转换函数,把结果转成都转成UTF-8的格式:

点击(此处)折叠或打开

  1. def json_unicode2utf8(js):
  2.     if isinstance(js, dict):
  3.         for key, value in js.items():
  4.             k = copy.deepcopy(key).encode('utf-8')
  5.             v = copy.deepcopy(value)
  6.             del js[key]
  7.             js[k] = v
  8.             if isinstance(v, dict):
  9.                 json_unicode2utf8(v)
  10.             elif isinstance(v, list):
  11.                 json_unicode2utf8(v)
  12.             else:
  13.                 if isinstance(v, (str, unicode)):
  14.                     v = v.encode('utf-8')
  15.                 js[k] = v

  16.     elif isinstance(js, list):
  17.         for n in range(len(js)):
  18.             if isinstance(js[n], dict):
  19.                 json_unicode2utf8(js[n])
  20.             elif isinstance(js[n], list):
  21.                 json_unicode2utf8(js[n])
  22.             else:
  23.                 if isinstance(js[n], (str, unicode)):
  24.                     js[n] =js[n].encode('utf-8')
  25.     else:
  26.         print js.encode('utf-8')

阅读(1900) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~