有的时候我们用python来抓取网页会得到类似 '\\u003C\\u0066\\u0072\\u006F\\u006D\\u003E' 或者 '%u003c%u0062%u0072%u003e%u003c%u0064%u0069%u0076%u0020%u0063%u006c......' 那么应该怎么处理呢?

python

这种情况就是把 unicode直接输出到文本中了,现在需要把它还原回去。

解决:

In [23]: s1
Out[23]: '\\u003C\\u0066\\u0072\\u006F\\u006D\\u003E'
In [24]: s2
Out[24]: '%u003c%u0062%u0072%u003e%u003c%u0064%u0069%u0076%u0020%u0063%u006c......'
In [25]: print s1.decode('unicode-escape')
In [26]: print s2.replace("%", "\\").decode('unicode-escape')
<br><div cl......

另一种方式是使用json

def to_chinese(unicode_str):
    x = json.loads('{"chinese":"%s"}' % unicode_str)
    return x['chinese']

php

$str = preg_replace("/\\\\u([0-9a-f]{3,4})/i", "&#x\\1;", $str);
$str = html_entity_decode($str, null, 'UTF-8');

posted @ 2020-04-16 16:51 komomon 阅读(825)  评论(0) 编辑 收藏 举报


python字符编码(一看就懂)
从今天开始我们就要学习文件相关的知识了,讲到文件的话有一种文件叫文本文件。文本文件涉及到了字符及字符概念,说到字符就必须考虑字符编码了,所以在讲文件之前必须了解字符编码。
首先,Python中没有字符类型,只有字符串类型。单个字符按照长度为1的字符串处理,这对于曾是OIER的我来说有点不适应啊。   字符串的表示方法     最常用的就是用一对双引号或一对单引号把一串字符括起来,像这样 'Hello world!' 或 "Hello world!" 。 给妹子讲python-S01E08理清python中的字符编码方法
本文介绍python中编、解码的本质是文本字符串和字节字符串的相互转换、python中编、解码方法举例及过程解析、unicode、latin-1、ASCII编码方式的兼容性问题、读取二进制文件。
1.什么是字符编码 既然是简述那肯定是简单明了.字符编码,看名字就是一种字符的编码格式,由于计算机内部采用二进制,想要将人类的语言字符输入到计算机就需要一种编码格式,这就是字符编码.字符-------编码(字符编码表)----->二进制.
有时候从接口的返回值里面获取到的是类似"%u4E0A%u6D77%u60A0%u60A0"这种格式的编码,不是python里面的unicode编码。 python里面的unicode编码应该是这种格式:\u4e0a\u6d77\u60a0\u60a0 unicode编码-python2