解决python3中的requests解析中文页面出现乱码问题

yipeiwu_com7年前Python基础

第一部分 关于requests库

(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)

总结

以上所述是小编给大家介绍的解决python3中的requests解析中文页面出现乱码问题,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【听图阁-专注于Python设计】网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

相关文章

Python操作Mongodb数据库的方法小结

本文实例讲述了Python操作Mongodb数据库的方法。分享给大家供大家参考,具体如下: 一 导入 pymongo from pymongo import MongoClient...

Python中单例模式总结

一、单例模式     a、单例模式分为四种:文件,类,基于__new__方法实现单例模式,基于metaclass方式实现    ...

基于Python的关键字监控及告警

为了解决日志文件监控的问题, 使用python脚本完成了基于关键字的告警功能 环境 python 2.7 依赖包 time \ traceback \ filelock \ loggin...

python队列Queue的详解

Queue Queue是python标准库中的线程安全的队列(FIFO)实现,提供了一个适用于多线程编程的先进先出的数据结构,即队列,用来在生产者和消费者线程之间的信息传递 基本FIFO...

Django使用httpresponse返回用户头像实例代码

Django使用httpresponse返回用户头像实例代码

本文研究的主要是Django使用httpresponse返回用户头像,下面是相关实例代码。 当请求一个页面时,Django 把请求的 metadata 数据包装成一个 HttpReque...