概述
用爬虫获取网页信息的时候,我们可能会遇到这样一个情况,网页看到是汉字但是爬虫获取的却是u6211u6211uxxxx这样的一堆字符,这是什么鬼?在网上搜索得出的方法要么是说转码要么是说可以直接输出就可以。但是都不能解决我们遇到的问题。今天在这里我们就从底层去了解出现这类情况的原因吧
u6211是什么?
这是汉字我经过unicode编码产生的
unicode是什么?
世界上存在着多种编码方式,在ANSI编码下,同一个编码值,在不同的编码体系里代表着不同的字。在简体中文系统下,ANSI 编码代表 GB2312 编码,在日文操作系统下,ANSI 编码代表 JIS 编码,可能最终显示的是中文,也可能显示的是日文。在ANSI编码体系下,要想打开一个文本文件,不但要知道它的编码方式,还要安装有对应编码表,否则就可能无法读取或出现乱码。为什么电子邮件和网页都经常会出现乱码,就是因为信息的提供者可能是日文的ANSI编码体系和信息的读取者可能是中文的编码体系,他们对同一个二进制编码值进行显示,采用了不同的编码,导致乱码。这个问题促使了unicode码的诞生。
出现u的原因
而我们遇到的问题即是汉字在用unicode编码后字符串,它以uxxxx的格式显示,之所以没有显示为汉字是因为没有解码,我们看到的u6211是字符串格式,所以它其实是\u6211,第一个反斜杠转义了后面一个反斜杠,导致无法正确解码
怎么将我转成u6211?
js
escape("我")
//输出的结果为:"%u6211"
python
最后
以上就是雪白自行车为你收集整理的java unicode 我爱你,各语言解决\\u6211%u6211\u6211问题的全部内容,希望文章能够帮你解决java unicode 我爱你,各语言解决\\u6211%u6211\u6211问题所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复