解决Python网页爬虫之中文乱码问题


Posted in Python onMay 11, 2018

Python是个好工具,但是也有其固有的一些缺点。最近在学习网页爬虫时就遇到了这样一种问题,中文网站爬取下来的内容往往中文显示乱码。看过我之前博客的同学可能知道,之前爬取的一个学校网页就出现了这个问题,但是当时并没有解决,这着实成了我一个心病。这不,刚刚一解决就将这个方法公布与众,大家一同分享。

首先,我说一下Python中文乱码的原因,Python中文乱码是由于Python在解析网页时默认用Unicode去解析,而大多数网站是utf-8格式的,并且解析出来之后,python竟然再以Unicode字符格式输出,会与系统编码格式不同,导致中文输出乱码,知道原因后我们就好解决了。下面上代码,实验对象仍是被人上了无数遍的百度主页~

# -*- coding: utf-8 -*-

import urllib2
import re
import requests
import sys

import urllib
#设置编码
reload(sys)
sys.setdefaultencoding('utf-8')
#获得系统编码格式
type = sys.getfilesystemencoding()
r = urllib.urlopen("http://www.baidu.com")
#将网页以utf-8格式解析然后转换为系统默认格式
a = r.read().decode('utf-8').encode(type)
print a

最后输出效果,中文完美输出

解决Python网页爬虫之中文乱码问题

以上这篇解决Python网页爬虫之中文乱码问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
详解Django中的过滤器
Jul 16 Python
windows上安装Anaconda和python的教程详解
Mar 28 Python
符合语言习惯的 Python 优雅编程技巧【推荐】
Sep 25 Python
Python字典的基本用法实例分析【创建、增加、获取、修改、删除】
Mar 05 Python
Python 堆叠柱状图绘制方法
Jul 29 Python
使用 python pyautogui实现鼠标键盘控制功能
Aug 04 Python
详解PyTorch中Tensor的高阶操作
Aug 18 Python
Python将视频或者动态图gif逐帧保存为图片的方法
Sep 10 Python
Python获取、格式化当前时间日期的方法
Feb 10 Python
pytorch Dropout过拟合的操作
May 27 Python
利用Matlab绘制各类特殊图形的实例代码
Jul 16 Python
python高温预警数据获取实例
Jul 23 Python
解决python爬虫中有中文的url问题
May 11 #Python
利用Python yagmail三行代码实现发送邮件
May 11 #Python
解决Pandas to_json()中文乱码,转化为json数组的问题
May 10 #Python
解决python3 json数据包含中文的读写问题
May 10 #Python
Python3.6通过自带的urllib通过get或post方法请求url的实例
May 10 #Python
对python3 urllib包与http包的使用详解
May 10 #Python
Python3处理HTTP请求的实例
May 10 #Python
You might like
PHP.MVC的模板标签系统(四)
2006/09/05 PHP
PHPThumb PHP 图片缩略图库
2012/03/11 PHP
php输入流php://input使用浅析
2014/09/02 PHP
php字符串过滤与替换小结
2015/01/26 PHP
PHP获取用户访问IP地址的5种方法
2016/05/16 PHP
js在数组中删除重复的元素自保留一个(两种实现思路)
2014/08/22 Javascript
jQuery仿天猫实现超炫的加入购物车
2015/05/04 Javascript
JavaScript中Function()函数的使用教程
2015/06/04 Javascript
javascript实现继承的简单实例
2015/07/26 Javascript
js实现点击向下展开的下拉菜单效果代码
2015/09/01 Javascript
Bootstrap3 多选和单选框(checkbox)
2016/12/29 Javascript
基于javascript实现碰撞检测
2020/03/12 Javascript
element-ui中dialog弹窗关闭按钮失效的解决
2020/09/22 Javascript
微信小程序实现点赞业务
2021/02/10 Javascript
python局域网ip扫描示例分享
2014/04/03 Python
python GUI实例学习
2017/11/21 Python
Django rest framework基本介绍与代码示例
2018/01/26 Python
python 按不同维度求和,最值,均值的实例
2018/06/28 Python
seek引发的python文件读写的问题及解决
2019/07/26 Python
python3常用的数据清洗方法(小结)
2019/10/31 Python
python实现word文档批量转成自定义格式的excel文档的思路及实例代码
2020/02/21 Python
python3将变量写入SQL语句的实现方式
2020/03/02 Python
django实现将修改好的新模型写入数据库
2020/03/31 Python
利用python对excel中一列的时间数据更改格式操作
2020/07/14 Python
使用python tkinter开发一个爬取B站直播弹幕工具的实现代码
2021/02/07 Python
用CSS3和table标签实现一个圆形轨迹的动画的示例代码
2019/01/17 HTML / CSS
使用HTML5进行SVG矢量图形绘制的入门教程
2016/02/19 HTML / CSS
马来西亚网上购物:Youbeli
2018/03/30 全球购物
Ajax的优点和缺点
2014/11/21 面试题
考试作弊检讨书1000字(5篇)
2014/10/19 职场文书
群众路线教育实践活动学习笔记内容
2014/11/06 职场文书
2015年司法所工作总结
2015/04/27 职场文书
2016应届毕业生自荐信范文
2016/01/28 职场文书
Canvas三种动态画圆实现方法说明(小结)
2021/04/16 Javascript
Python基本数据类型之字符串str
2021/07/21 Python
java如何实现socket连接方法封装
2021/09/25 Java/Android