问题
这个问题是最近做一个爬虫的时候遇到的。普通地用requests抓内容,然后输出。
r = requests.get(url) print(r.text)
执行时,解释器报错:
Traceback: UnicodeEncodeError: 'gbk' can't encode charactor '\u026a' in position 50: illegal multibyte sequence
我一开始看到这个是一脸懵逼的,主要是这几个原因:
1. 查看了r.encoding,发现编码格式就是utf-8,和gbk一毛钱关系没有。
2. 整个过程应该是把从服务器拿来的二进制bytes格式转换成字符串str的过程,应当是decode,这里报错UnicodeEncodeError有点反常识。