(1)
requests是一个很实用的Python HTTP客户端库,编写爬虫和测试服务器响应数据时常常会用到。
(2)
其中的Request对象在访问服务器后会返回一个Response对象,这个对象将返回的Http响应字节码保存到content属性中。
(3)
可是若是你访问另外一个属性text时,会返回一个unicode对象,乱码问题就会经常发成在这里。
(4)
由于Response对象会经过另外一个属性encoding来将字节码编码成unicode,而这个encoding属性竟然是responses本身猜出来的。
因此要么你直接使用content(字节码),要么记得把encoding设置正确,好比我获取了一段gbk编码的网页,就须要如下方法才能获得正确的unicode。
import requests url = "http://xxx.xxx.xxx" response = requests.get(url) response.encoding = 'gbk' print(response.text)