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爬虫之打包生成exe文件
Nov 06 Python
Python读取一个目录下所有目录和文件的方法
Jul 15 Python
Python性能提升之延迟初始化
Dec 04 Python
Pycharm设置界面全黑的方法
May 23 Python
Python基于matplotlib画箱体图检验异常值操作示例【附xls数据文件下载】
Jan 07 Python
python实现通过flask和前端进行数据收发
Aug 22 Python
Django视图扩展类知识点详解
Oct 25 Python
Pytorch 多维数组运算过程的索引处理方式
Dec 27 Python
Android Q之气泡弹窗的实现示例
Jun 23 Python
Python2手动安装更新pip过程实例解析
Jul 16 Python
Python爬虫之Spider类用法简单介绍
Aug 04 Python
Python 如何将integer转化为罗马数(3999以内)
Jun 05 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 smarty 二级分类代码和模版循环例子
2011/06/01 PHP
thinkPHP模板中函数的使用方法示例
2016/11/30 PHP
php常用数组array函数实例总结【赋值,拆分,合并,计算,添加,删除,查询,判断,排序】
2016/12/07 PHP
详解PHP数据压缩、加解密(pack, unpack)
2016/12/17 PHP
PHP实现多图上传和单图上传功能
2018/05/17 PHP
Mootools 1.2教程 输入过滤第二部分(字符串)
2009/09/15 Javascript
JS保留小数点(四舍五入、四舍六入)实现思路及实例
2013/04/25 Javascript
javascript 用函数语句和表达式定义函数的区别详解
2014/01/06 Javascript
JS动态添加选项案例分析
2016/10/17 Javascript
JavaScript中访问id对象 属性的方式访问属性(实例代码)
2016/10/28 Javascript
jQuery插件FusionWidgets实现的AngularGauge图效果示例【附demo源码】
2017/03/23 jQuery
node.js中cluster的使用教程
2017/06/09 Javascript
JS实现简易的图片拖拽排序实例代码
2017/06/09 Javascript
关于Vue Webpack2单元测试示例详解
2017/08/14 Javascript
在vue中添加Echarts图表的基本使用教程
2017/11/22 Javascript
原生JS实现轮播图效果
2018/10/12 Javascript
TypeScript基础入门教程之三重斜线指令详解
2018/10/22 Javascript
详解Vue项目引入CreateJS的方法(亲测可用)
2019/05/30 Javascript
利用Psyco提升Python运行速度
2014/12/24 Python
python动态加载包的方法小结
2016/04/18 Python
python 通过可变参数计算n个数的乘积方法
2019/06/13 Python
Pandas对DataFrame单列/多列进行运算(map, apply, transform, agg)
2020/06/14 Python
python 第三方库paramiko的常用方式
2021/02/20 Python
CSS3中的元素过渡属性transition示例详解
2016/11/30 HTML / CSS
通过HTML5 Canvas API绘制弧线和圆形的教程
2016/03/14 HTML / CSS
美国Max仓库:Max Warehouse
2020/05/31 全球购物
2014年党课学习心得体会
2014/07/08 职场文书
2014最新版群众路线四风整改措施
2014/09/24 职场文书
2014年工作总结与下年工作计划
2014/11/27 职场文书
爱情保证书
2015/01/17 职场文书
项目经理岗位职责范本
2015/04/01 职场文书
活动主持人开场白
2015/05/28 职场文书
成绩单家长意见
2015/06/03 职场文书
公司员工奖惩制度
2015/08/04 职场文书
《折线统计图》教学反思
2016/02/22 职场文书
“鬼灭之刃”热度不减,其成功背后的原因是什么?
2022/03/22 日漫