python中requests爬去网页内容出现乱码问题解决方法介绍


Posted in Python onOctober 25, 2017

最近在学习python爬虫,使用requests的时候遇到了不少的问题,比如说在requests中如何使用cookies进行登录验证,这可以查看这篇文章。这篇博客要解决的问题是如何避免在使用requests的时候出现乱码。

import requests  
res=requests.get("https://www.baidu.com")  
print res.content

以上就是使用requests进行简单的网页请求数据的方式。但是很容易出现乱码的问题。

我们可以通过在网页上右击查看源代码中查看编码方式:content="text/html;charset=utf-8"->

我们便可以知道网页的编码方式是utf8.由于中文的编码方式为gbk,所以我们需要将编码方式改变为gbk。

我查看了一些资料,说requests可以自动获取网页的编码方式的,并且通过res.encode输出一看是utf8,是的 没错。但是输出来的内容中文存在乱码。 有说可以直接指定获取到内容的encode属性即可,"res.encode='gbk'",但我尝试了不可以的。

python内部的编码方式为utf8,也就是说python在处理其他字符串内容的时候首先要先将内容转化为utf8的编码方式,然后在解码为你想要的编码方式输出。

例如s=”中文” 为str类型的字符串 编码方式为gb2312

需要 s.decode("gb2312")将gb2312编码方式的内容解码为Unicode编码

然后输出的时候要将s的编码方式规定为gbk->s.encode("gbk")

言归正传,我们获取到网页内容res后, 通过res.content.decode("utf8","ignore").encode("gbk","ignore")就不会有乱码了。

这里所使用的ignore属性意思是忽略其中有一场的编码,仅显示有效的编码。

总结

以上就是本文关于python中requests爬去网页内容出现乱码问题解决方法的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站:python编程之requests在网络请求中添加cookies参数方法详解、Python_LDA实现方法详解等,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

Python 相关文章推荐
Django中使用locals()函数的技巧
Jul 16 Python
使用Python的urllib2模块处理url和图片的技巧两则
Feb 18 Python
浅谈Python 的枚举 Enum
Jun 12 Python
python-opencv在有噪音的情况下提取图像的轮廓实例
Aug 30 Python
python实现图片文件批量重命名
Mar 23 Python
python版opencv摄像头人脸实时检测方法
Aug 03 Python
python实现超市管理系统(后台管理)
Oct 25 Python
Django框架下静态模板的继承操作示例
Nov 08 Python
django rest framework serializers序列化实例
May 13 Python
Python实现发票自动校核微信机器人的方法
May 22 Python
Python爬虫小例子——爬取51job发布的工作职位
Jul 10 Python
用python对excel进行操作(读,写,修改)
Dec 25 Python
python编程之requests在网络请求中添加cookies参数方法详解
Oct 25 #Python
Python探索之pLSA实现代码
Oct 25 #Python
python正则表达式re之compile函数解析
Oct 25 #Python
Python2和Python3中print的用法示例总结
Oct 25 #Python
Python_LDA实现方法详解
Oct 25 #Python
python+mongodb数据抓取详细介绍
Oct 25 #Python
python装饰器实例大详解
Oct 25 #Python
You might like
谈谈新手如何学习PHP
2006/12/14 PHP
PHP多个版本的分析解释
2011/07/21 PHP
php权重计算方法代码分享
2014/01/09 PHP
php实现从上传文件创建缩略图的方法
2015/04/02 PHP
Yii 框架使用Forms操作详解
2020/05/18 PHP
PHP7 其他语言层面的修改
2021/03/09 PHP
JS option location 页面跳转实现代码
2008/12/27 Javascript
基于jquery的气泡提示效果
2010/05/31 Javascript
各情景下元素宽高的获取实现代码
2011/09/13 Javascript
仿中关村在线首页弹出式广告插件(jQuery版)
2012/05/03 Javascript
jQuery ajax serialize()方法的使用以及常见问题解决
2013/01/27 Javascript
jquery控制表单输入框显示默认值的方法
2015/05/22 Javascript
bootstrap轮播模板使用方法详解
2017/11/17 Javascript
JavaScript 中定义函数用 var foo = function () {} 和 function foo()区别介绍
2018/03/01 Javascript
微信小程序实现聊天对话(文本、图片)功能
2018/07/06 Javascript
Node.js 多进程处理CPU密集任务的实现
2019/05/26 Javascript
关于layui的动态图标不显示的解决方法
2019/09/04 Javascript
vue中使用element ui的弹窗与echarts之间的问题详解
2019/10/25 Javascript
Django使用详解:ORM 的反向查找(related_name)
2018/05/30 Python
Python 微信之获取好友昵称并制作wordcloud的实例
2019/02/21 Python
PyQt5实现简单数据标注工具
2019/03/18 Python
pytest fixtures装饰器的使用和如何控制用例的执行顺序
2021/01/28 Python
html5实现输入框fixed定位在屏幕最底部兼容性
2020/07/03 HTML / CSS
AmazeUI 模态窗口的实现代码
2020/08/18 HTML / CSS
澳大利亚在线时尚精品店:Hello Molly
2018/02/26 全球购物
C#里面如何倒序排列一个数组的元素?
2013/06/21 面试题
文员岗位职责
2013/11/09 职场文书
校运会广播稿100字
2014/01/27 职场文书
学校运动会报道稿
2014/09/23 职场文书
幼儿园五一劳动节活动总结
2015/02/09 职场文书
电气工程师岗位职责
2015/02/12 职场文书
2015年教师党员自我评价材料
2015/03/04 职场文书
大学生读书笔记范文
2015/07/01 职场文书
英语投诉信范文
2015/07/03 职场文书
PHP解决高并发问题
2021/04/01 PHP
怎么用Python识别手势数字
2021/06/07 Python