解决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 相关文章推荐
Python生成随机密码
Mar 10 Python
python运行时间的几种方法
Jun 17 Python
一张图带我们入门Python基础教程
Feb 05 Python
Python实现自动为照片添加日期并分类的方法
Sep 30 Python
python3监控CentOS磁盘空间脚本
Jun 21 Python
解决Python设置函数调用超时,进程卡住的问题
Aug 08 Python
python实现根据文件格式分类
Oct 31 Python
利用python实现PSO算法优化二元函数
Nov 13 Python
python 比较字典value的最大值的几种方法
Apr 17 Python
Python代码需要缩进吗
Jul 01 Python
Scrapy基于scrapy_redis实现分布式爬虫部署的示例
Sep 29 Python
OpenCV3.3+Python3.6实现图片高斯模糊
May 18 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
PHILIPS L4X25T电路分析和打理
2021/03/02 无线电
用来解析.htgroup文件的PHP类
2012/09/05 PHP
php格式文件打开的四种方法
2018/02/24 PHP
Prototype使用指南之enumerable.js
2007/01/10 Javascript
Javascript 自适应高度的Tab选项卡
2011/04/05 Javascript
js showModalDialog 弹出对话框的简单实例(子窗体)
2014/01/07 Javascript
JavaScript替换当前页面的方法
2015/04/03 Javascript
简介JavaScript中search()方法的使用
2015/06/06 Javascript
Node.js利用Net模块实现多人命令行聊天室的方法
2016/12/23 Javascript
Bootstrap中glyphicons-halflings-regular.woff字体报404错notfound的解决方法
2017/01/19 Javascript
自定义PC微信扫码登录样式写法
2017/12/12 Javascript
Vue2.0实现组件数据的双向绑定问题
2018/03/06 Javascript
Vue scrollBehavior 滚动行为实现后退页面显示在上次浏览的位置
2019/05/27 Javascript
小程序实现左滑删除效果
2019/07/25 Javascript
Vue2.0实现简单分页及跳转效果
2019/07/29 Javascript
[04:44]DOTA2英雄梦之声_第12期_矮人直升机
2014/06/21 DOTA
[01:51]开启你的城市传奇 完美世界城市挑战赛开始报名
2018/10/09 DOTA
在Python中操作列表之List.append()方法的使用
2015/05/20 Python
详解Python中的Descriptor描述符类
2016/06/14 Python
python+selenium实现登录账户后自动点击的示例
2017/12/22 Python
Selenium元素的常用操作方法分析
2018/08/10 Python
python3调用百度翻译API实现实时翻译
2018/08/16 Python
PyQt5中向单元格添加控件的方法示例
2020/03/24 Python
Python常用断言函数实例汇总
2020/11/30 Python
用CSS3实现无限循环的无缝滚动的实例代码
2017/07/04 HTML / CSS
HTML5 canvas实现雪花飘落特效
2016/03/08 HTML / CSS
男女时尚与复古风格在线购物:RoseGal(全球免费送货)
2017/07/19 全球购物
英国山地公路自行车商店:Tweeks Cycles
2018/03/16 全球购物
如何实现一个自定义类的序列化
2012/05/22 面试题
生产经理的自我评价分享
2013/11/07 职场文书
测绘工程个人的自我评价
2013/11/23 职场文书
更夫岗位责任制
2014/02/11 职场文书
课外科技活动总结
2014/08/27 职场文书
弄虚作假心得体会
2014/09/10 职场文书
2015年三好一满意工作总结
2015/07/24 职场文书
python中Tkinter 窗口之输入框和文本框的实现
2021/04/12 Python