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中列表元素转为数字的方法分析
Jun 14 Python
Python正则表达式匹配中文用法示例
Jan 17 Python
利用信号如何监控Django模型对象字段值的变化详解
Nov 27 Python
Pandas 对Dataframe结构排序的实现方法
Apr 10 Python
利用python循环创建多个文件的方法
Oct 25 Python
Python3实现爬取简书首页文章标题和文章链接的方法【测试可用】
Dec 11 Python
Python字典的核心底层原理讲解
Jan 24 Python
pandas实现to_sql将DataFrame保存到数据库中
Jul 03 Python
python中的Elasticsearch操作汇总
Oct 30 Python
150行Python代码实现带界面的数独游戏
Apr 04 Python
python实现批量转换图片为黑白
Jun 16 Python
Python基础学习之奇异的GUI对话框
May 27 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使用get_headers函数判断远程文件是否存在的方法
2014/11/28 PHP
php判断两个浮点数是否相等的方法
2015/03/14 PHP
如何写php守护进程(Daemon)
2015/12/30 PHP
PHP中的empty、isset、isnull的区别与使用实例
2019/03/22 PHP
jQuery 使用手册(六)
2009/09/23 Javascript
Javascript学习笔记 delete运算符
2011/09/13 Javascript
下拉菜单点击实现连接跳转功能的js代码
2013/05/19 Javascript
Javascript delete 引用类型对象
2013/11/01 Javascript
Javascript遍历Html Table示例(包括内容和属性值)
2014/07/08 Javascript
深入分析escape()、encodeURI()、encodeURIComponent()的区别及示例
2014/08/04 Javascript
JavaScript对象之深度克隆介绍
2014/12/08 Javascript
常用的JavaScript WEB操作方法分享
2015/02/28 Javascript
JavaScript 中 JSON.parse 函数 和 JSON.stringify 函数
2018/12/05 Javascript
详解Vue+ElementUI从零开始搭建自己的网站(一、环境搭建)
2019/04/30 Javascript
JavaScript展开操作符(Spread operator)详解
2019/07/20 Javascript
微信公众号中的JSSDK接入及invalid signature等常见错误问题分析(全面解析)
2020/04/11 Javascript
浅谈在vue-cli3项目中解决动态引入图片img404的问题
2020/08/04 Javascript
jQuery编写QQ简易聊天框
2020/08/27 jQuery
如何在VUE中使用vue-awesome-swiper
2021/01/04 Vue.js
[19:14]DOTA2 HEROS教学视频教你分分钟做大人-维萨吉
2014/06/24 DOTA
[28:07]完美世界DOTA2联赛PWL S3 Phoenix vs INK ICE 第二场 12.13
2020/12/17 DOTA
Python字典深浅拷贝与循环方式方法详解
2020/02/09 Python
numpy库ndarray多维数组的维度变换方法(reshape、resize、swapaxes、flatten)
2020/04/28 Python
Django如何使用asyncio协程和ThreadPoolExecutor多线程
2020/10/12 Python
pycharm中leetcode插件使用图文详解
2020/12/07 Python
贝玲妃英国官网:Benefit英国
2018/02/03 全球购物
英国羊绒服装购物网站:Pure Collection
2018/10/22 全球购物
班组长安全职责
2014/01/05 职场文书
青年创业培训欢迎词
2014/01/08 职场文书
户籍证明的格式
2014/01/13 职场文书
教育科研先进个人材料
2014/01/26 职场文书
普通大学毕业生自荐信范文
2014/02/23 职场文书
《爱如茉莉》教后反思
2014/04/12 职场文书
关于长城的导游词
2015/01/30 职场文书
优秀英文求职信范文
2015/03/19 职场文书
2015社区六五普法工作总结
2015/04/21 职场文书