首先,检查所爬取html的编码格式
比如
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
...
<head>
然后对requests get的结果 r 设置编码格式
r.encoding = 'gb2312'
如果这样依旧是乱码,很有可能是字符超过了字符集的范围。比如 ‘ 鲘 ’,虽然网页上的显示不乱码,但requests用gb2313依然乱码,所以应使用更大的字符集,比如gbk。
参考:
尽量不要使用gb2312避免乱码