1000字范文,内容丰富有趣,学习的好帮手!
1000字范文 > python中unicode编码转换成中文的方法解决

python中unicode编码转换成中文的方法解决

时间:2020-12-02 23:00:09

相关推荐

python中unicode编码转换成中文的方法解决

在抓取部分网站的时候,有的网站会出现unicode编码的内容,这时候需要将编码的内容转换成中文,在网络上搜索了一些文章,有一些是介绍的python2的版本的,在python3中已经发生变更,下面介绍几种将unicode转换成中文的方法

第一种方法:

如果是直接写在编码里面的unicode编码,则在python3中,会被自动转换成中文

Python 3.5.4 (v3.5.4:3f56838, Aug 8 , 02:17:05) [MSC v.1900 64 bit (AMD64)] on win32Type "help", "copyright", "credits" or "license" for more information.>>> '\u5927\u53a6\u5ba4\u51852''大厦室内2'>>> u'\u5927\u53a6\u5ba4\u51852''大厦室内2'>>> print('\u5927\u53a6\u5ba4\u51852')大厦室内2>>> a = '\u5927\u53a6\u5ba4\u51852'>>> a'大厦室内2'>>> a=u'\u5927\u53a6\u5ba4\u51852'>>> a'大厦室内2'>>> from fontTools import unicode>>> unicode(a)'大厦室内2'>>> unicode('\u5927\u53a6\u5ba4\u51852')'大厦室内2'

以上几种输出方式都可以将编码自动转换成中文

第二种方法:

如果在抓取网站的过程中遇到了多个转义字符的问题,利用以上方法就不太适用,如此,则需要替换部分转义字符后再进行编码的转换

>>> s1=r'\\u7cbe\\u88c5\\u4fee'>>> s1'\\\\u7cbe\\\\u88c5\\\\u4fee'>>> s1=s1.replace('\\\\', '\\')>>> print((s1.encode('utf8').decode('unicode_escape')))精装修>>> s2='\\u7cbe\\u88c5\\u4fee'>>> s2'\\u7cbe\\u88c5\\u4fee'>>> print(s2.encode('utf8').decode('unicode_escape'))精装修# 亲自测试可以编码成如下几种方式再进行解码,都可以转换成中文>>> ss.encode().decode('unicode_escape')'精装修'>>> ss.encode('latin-1').decode('unicode_escape')'精装修'>>> ss.encode('gbk').decode('unicode_escape')'精装修'

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。