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 相关文章推荐
Python中用于返回绝对值的abs()方法
May 14 Python
详解Python中dict与set的使用
Aug 10 Python
基于Python __dict__与dir()的区别详解
Oct 30 Python
Python 2.7中文显示与处理方法
Jul 16 Python
Python爬取qq空间说说的实例代码
Aug 17 Python
python 猴子补丁(monkey patch)
Jun 26 Python
python flask几分钟实现web服务的例子
Jul 26 Python
Python下应用opencv 实现人脸检测功能
Oct 24 Python
Python代码生成视频的缩略图的实例讲解
Dec 22 Python
Python无头爬虫下载文件的实现
Apr 02 Python
Python 防止死锁的方法
Jul 29 Python
python爬虫scrapy框架的梨视频案例解析
Feb 20 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中变量及部分适用方法
2008/03/27 PHP
PHP 模拟$_PUT实现代码
2010/03/15 PHP
php 数组使用详解 推荐
2011/06/02 PHP
PHP中多维数组的foreach遍历示例
2014/06/13 PHP
php解析http获取的json字符串变量总是空白null
2015/03/02 PHP
WordPress分页伪静态加html后缀
2016/06/08 PHP
php实现网页端验证码功能
2017/07/11 PHP
thinkphp5 加载静态资源路径与常量的方法
2017/12/24 PHP
PHP的PDO预处理语句与存储过程
2019/01/27 PHP
基于jquery扩展漂亮的下拉框可以二次修改
2013/11/19 Javascript
jQuery检测鼠标左键和右键点击的方法
2015/03/17 Javascript
JavaScript第一篇之实现按钮全选、功能
2016/08/21 Javascript
JavaScript定时器setTimeout()和setInterval()详解
2017/08/18 Javascript
jQuery图片加载失败替换默认图片方法汇总
2017/11/29 jQuery
JS实现的JSON数组去重算法示例
2018/04/11 Javascript
Vue.js特性Scoped Slots的浅析
2019/02/20 Javascript
wxPython中listbox用法实例详解
2015/06/01 Python
浅谈Pandas中map, applymap and apply的区别
2018/04/10 Python
tensorflow 输出权重到csv或txt的实例
2018/06/14 Python
python实现猜数字小游戏
2020/03/24 Python
Django 连接sql server数据库的方法
2018/06/30 Python
pytorch训练imagenet分类的方法
2018/07/27 Python
pygame游戏之旅 调用按钮实现游戏开始功能
2018/11/21 Python
突袭HTML5之Javascript API扩展3—本地存储全新体验
2013/01/31 HTML / CSS
伊利莎白雅顿官网:Elizabeth Arden
2016/10/10 全球购物
丹尼尔惠灵顿手表天猫官方旗舰店:Daniel Wellington
2017/08/25 全球购物
中国电子产品批发商/跨境电商/外贸网:Sunsky-online
2020/04/20 全球购物
远程研修随笔感言
2014/02/10 职场文书
学校师德师风自我剖析材料
2014/09/29 职场文书
2014年图书馆工作总结
2014/11/25 职场文书
学校会议通知范文
2015/04/15 职场文书
检察院起诉意见书
2015/05/20 职场文书
周恩来的四个昼夜观后感
2015/06/03 职场文书
《珍珠鸟》教学反思
2016/02/16 职场文书
python xlwt模块的使用解析
2021/04/13 Python
python爬虫之selenium库的安装及使用教程
2021/05/23 Python