资讯专栏INFORMATION COLUMN

python3的requests解析中文页面出现乱码的解决方法

huhud / 3459人阅读

摘要:第二部分解决方法所以要么你直接使用字节码,要么记得把设置正确,比如我获取了一段编码的网页就需要以下方法才能得到正确的。

第一部分 关于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)

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/43611.html

相关文章

  • 前端小白python实战: 报纸分词排序

    摘要:先看效果环境位目标抓取一篇报纸,并提取出关键字,然后按照出现次数排序,用在页面上显示出来。首先要抓取网页,但是网页在控制台输出的时候,中文总是乱码。但是不得不承认,上有很多非常优秀的库。例如但是这些包我在上安装的时候总是报错。 先看效果: showImg(https://segmentfault.com/img/bVRLCc?w=612&h=668); 环境 win7 64位 pyt...

    cncoder 评论0 收藏0
  • Servlet第四篇【request对象常用方法、应用】

    摘要:浏览器的中文数据提交给服务器,以编码对中文编码,当我在读取数据的时候,拿到的当然是乱码。接下来使用方式传递中文数据,把表单的方式改成即可当我们访问的时候,又出现乱码了于是我按照上面的方式,把对象设置编码为试试结果还是乱码。 什么是HttpServletRequest HttpServletRequest对象代表客户端的请求,当客户端通过HTTP协议访问服务器时,HTTP请求头中的所有信...

    raise_yang 评论0 收藏0
  • Java文件上传细讲

    摘要:代码量也的确减少很多也能够获取普通字段的参数上传文件名的中文乱码和上传数据的中文乱码我把文件名改成中文,就乱码了表单提交过来的中文数据也乱码了。 什么是文件上传? 文件上传就是把用户的信息保存起来。 为什么需要文件上传? 在用户注册的时候,可能需要用户提交照片。那么这张照片就应该要进行保存。 上传组件(工具) 为什么我们要使用上传工具? 为啥我们需要上传组件呢?当我们要获取客户端的数据...

    soasme 评论0 收藏0

发表评论

0条评论

huhud

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<