python中unicode编码转换成中⽂的解决⽅法
在抓取部分⽹站的时候,有的⽹站会出现unicode编码的内容,这时候需要将编码的内容转换成中⽂,在⽹络上搜索了⼀些⽂章,有⼀些是介绍的python2的版本的,在python3中已经发⽣变更,下⾯介绍⼏种将unicode转换成中⽂的⽅法
第⼀种⽅法:
如果是直接写在编码⾥⾯的unicode编码,则在python3中,会被⾃动转换成中⽂
Python 3.5.4 (v3.5.4:3f56838, Aug 8 2017, 02:17:05) [MSC v.1900 64 bit (AMD64)] on win32
Type "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'
place('\\', '\')
print((s1.encode('utf8').decode('unicode_escape')))
精装修
s2='\u7cbe\u88c5\u4fee'
s2
'\u7cbe\u88c5\u4fee'
de('utf8').decode('unicode_escape'))
精装修
亲⾃测试可以编码成如下⼏种⽅式再进⾏解码,都可以转换成中⽂
'精装修'
'精装修'
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论