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爬虫之抓取百度贴吧并存储到本地txt文件改进版
Nov 06 Python
MySQL最常见的操作语句小结
May 07 Python
python脚本实现数据导出excel格式的简单方法(推荐)
Dec 30 Python
Python AES加密模块用法分析
May 22 Python
浅谈python数据类型及类型转换
Dec 18 Python
Python OpenCV处理图像之图像像素点操作
Jul 10 Python
Python实现的对本地host127.0.0.1主机进行扫描端口功能示例
Feb 15 Python
Python列表与元组的异同详解
Jul 02 Python
关于python 的legend图例,参数使用说明
Apr 17 Python
python如何求圆的面积
Jul 01 Python
Django自带用户认证系统使用方法解析
Nov 12 Python
浅谈Selenium+Webdriver 常用的元素定位方式
Jan 13 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 文件上传全攻略
2010/04/28 PHP
探讨PHP函数ip2long转换IP时数值太大产生负数的解决方法
2013/06/06 PHP
PHP通过串口实现发送短信
2015/07/08 PHP
php使用gearman进行任务分发操作实例详解
2020/02/26 PHP
用javascript控制iframe滚动的代码
2007/04/10 Javascript
jQuery温习篇 强大的JQuery选择器
2010/04/24 Javascript
ExtJS PropertyGrid中使用Combobox选择值问题
2010/06/13 Javascript
JavaScript中的关联数组问题
2015/03/04 Javascript
AngularJS动态加载模块和依赖的方法分析
2016/11/08 Javascript
vue实现ToDoList简单实例
2017/02/07 Javascript
微信小程序版翻牌小游戏
2018/01/26 Javascript
vue 配置多页面应用的示例代码
2018/10/22 Javascript
Vue路由对象属性 .meta $route.matched详解
2019/11/04 Javascript
Vue实现购物车实例代码两则
2020/05/30 Javascript
vue中defineProperty和Proxy的区别详解
2020/11/30 Vue.js
[01:08:57]2014 DOTA2国际邀请赛中国区预选赛 5 23 CIS VS LGD第二场
2014/05/24 DOTA
[52:02]DOTA2-DPC中国联赛 正赛 Phoenix vs Dragon BO3 第二场 2月26日
2021/03/11 DOTA
Python环境下搭建属于自己的pip源的教程
2016/05/05 Python
python爬虫爬取监控教务系统的思路详解
2020/01/08 Python
Python使用20行代码实现微信聊天机器人
2020/06/05 Python
Python 高效编程技巧分享
2020/09/10 Python
如何用python爬取微博热搜数据并保存
2021/02/20 Python
波兰运动鞋网上商店:e-Sporting
2018/02/16 全球购物
Perfume’s Club德国官网:在线购买香水
2019/04/08 全球购物
英国名牌男装店:Standout
2021/02/17 全球购物
预备党员思想汇报
2014/01/08 职场文书
大学总结自我鉴定
2014/01/18 职场文书
《胖乎乎的小手》教学反思
2014/02/26 职场文书
竞选卫生委员演讲稿
2014/04/28 职场文书
民生工作实施方案
2014/05/31 职场文书
2014年超市工作总结
2014/11/19 职场文书
机关单位工作失职检讨书
2014/11/20 职场文书
2015教师见习期工作总结
2014/12/12 职场文书
2015年大学学生会工作总结
2015/05/13 职场文书
员工规章制度范本
2015/08/07 职场文书
PostgreSQL解析URL的方法
2021/08/02 PostgreSQL