Python decode和encode
字符串在python的内部的表示是unicode编码,因此在做编码转换的时候一般会用到unicode编码作为中间的桥梁,先将其他编码的字符串decode成unicode然后再从unicode encode为另一种编码格式;
Python decode()方法以encoding指定的编码格式解码字符串。默认编码为字符串编码。
python
1 | str = "this is string example....wow!!!"; |
在python3中默认的字符编码为utf-8,在做爬虫的时候经常会遇到/\u4e2d的unicode编码个会的数据导致显示的结果不是中文,一般打印的都是str类型,这里需要使用:
python
1 | str.encode().decode('unicode-escape')#字节流转换 |
此外在python3中str类型已经没有decode了,所以只能先变成byte类型然后再使用decode
此外在做爬虫的时候,使用response.text返回str文件,使用response.content返回的是bytes文件。此外因为数据源的编码不规范,requests不能返回正确的编码,
base64编码:
python
1 | import base64 |