码迷,mamicode.com
首页 > 编程语言 > 详细

python3中Unicode字符转中文

时间:2018-07-04 13:36:07      阅读:245      评论:0      收藏:0      [点我收藏+]

标签:字符串   style   音乐   int   转换   爬取   print   span   unicode   

python3中将Unicode字符串转成中文

用python爬虫爬取数据时,有时候会发现爬取的数据类似于

"\u3010\u6f14\u5531\u4f1a\u30112000-\u62c9\u9614\u97f3\u4e50\u4f1a"这样的Unicode字符串,在python的交互环境里可以直接打印输出查看内容;
print("\u3010\u6f14\u5531\u4f1a\u30112000-\u62c9\u9614\u97f3\u4e50\u4f1a")
【演唱会】2000-拉阔音乐会

但是有些时候,我们需要保存的是中文数据,而不是Unicode字符串,所以我们需要将Unicode转成中文,我们知道encode()方法是将Unicode码转成我们需要的编码格式,但是我们返回的本身就是str格式,所以我们需要将Unicode字符串转成Unicode码,网上查了资料,是将字符串进行decode("unicode_escape")转换,但是在python3中,提示str没有decode的方法。因此解决的办法是先采用encode()进行编码,在用同样的编码格式进行decode解码;

data = "\u3010\u6f14\u5531\u4f1a\u30112000-\u62c9\u9614\u97f3\u4e50\u4f1a".encode("utf-8").decode("utf-8")
print(type(data))
print(data)
C:\Python36\python.exe E:
/work/1st_duty/demo3.py <class str> 【演唱会】2000-拉阔音乐会
data = "\u3010\u6f14\u5531\u4f1a\u30112000-\u62c9\u9614\u97f3\u4e50\u4f1a".encode("GBK").decode("GBK")
print(type(data))
print(data)

C:\Python36\python.exe E:/work/1st_duty/demo3.py
<class str>
【演唱会】2000-拉阔音乐会

编码格式可以任意,只是解码的时候需要用相同的格式进行解码就行,这样我们就可以保存中文数据了。

 

python3中Unicode字符转中文

标签:字符串   style   音乐   int   转换   爬取   print   span   unicode   

原文地址:https://www.cnblogs.com/gjq168/p/9262559.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!