判断网页编码的方法python版


Posted in Python onAugust 12, 2016

在web开发的时候我们经常会遇到网页抓取和分析,各种语言都可以完成这个功能。我喜欢用python实现,因为python提供了很多成熟的模块,可以很方便的实现网页抓取。
但是在抓取过程中会遇到编码的问题,那今天我们来看一下如何判断网页的编码:
网上很多网页的编码格式都不一样,大体上是GBK,GB2312,UTF-8等。
我们在获取网页的的数据后,先要对网页的编码进行判断,才能把抓取的内容的编码统一转换为我们能够处理的编码,避免乱码问题的出现。

下面介绍两种判断网页编码的方法:

总结:第二个方法很准确,在网页编码分析的时候用python模块分析内容是最准确的,而使用分析meta头信息的方法是不太准确的。

方法一:使用urllib模块的getparam方法    

import urllib
#autor:pythontab.com
fopen1 = urllib.urlopen('http://www.baidu.com').info()
print fopen1.getparam('charset')# baidu

方法二:使用chardet模块    

#如果你的python没有安装chardet模块,你需要首先安装一下chardet判断编码的模块哦 
#author:pythontab.com
import chardet 
import urllib
#先获取网页内容
data1 = urllib.urlopen('http://www.baidu.com').read()
#用chardet进行内容分析
chardit1 = chardet.detect(data1)
 
print chardit1['encoding'] # baidu

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
分析Python编程时利用wxPython来支持多线程的方法
Apr 07 Python
Python3.6基于正则实现的计算器示例【无优化简单注释版】
Jun 14 Python
Python 利用内置set函数对字符串和列表进行去重的方法
Jun 29 Python
Python for循环中的陷阱详解
Jul 13 Python
python安装pil库方法及代码
Jun 25 Python
学习和使用python的13个理由
Jul 30 Python
Python3批量移动指定文件到指定文件夹方法示例
Sep 02 Python
python用quad、dblquad实现一维二维积分的实例详解
Nov 20 Python
Pytorch中的VGG实现修改最后一层FC
Jan 15 Python
Nginx+Uwsgi+Django 项目部署到服务器的思路详解
May 08 Python
Python 解析库json及jsonpath pickle的实现
Aug 17 Python
Python实战之实现简易的学生选课系统
May 25 Python
Python利用IPython提高开发效率
Aug 10 #Python
详解python如何调用C/C++底层库与互相传值
Aug 10 #Python
浅析python中的分片与截断序列
Aug 09 #Python
总结python爬虫抓站的实用技巧
Aug 09 #Python
教你用Type Hint提高Python程序开发效率
Aug 08 #Python
Python如何实现文本转语音
Aug 08 #Python
Python脚本处理空格的方法
Aug 08 #Python
You might like
thinkphp3查询mssql数据库乱码解决方法分享
2014/02/11 PHP
PHP Session机制简介及用法
2014/08/19 PHP
如何解决PHP使用mysql_query查询超大结果集超内存问题
2016/03/14 PHP
javascript面向对象的方式实现的弹出层效果代码
2010/01/28 Javascript
基于jQuery的输入框无值自动显示指定数据的实现代码
2011/01/24 Javascript
js加密解密字符串可自定义密码因子
2014/05/13 Javascript
Jquery倒计时源码分享
2014/05/16 Javascript
JavaScript获取网页、浏览器、屏幕高度和宽度汇总
2014/12/18 Javascript
js数组去重的方法汇总
2015/07/29 Javascript
jQuery Html控件基本操作(日常收集整理)
2016/03/11 Javascript
Node.js查找当前目录下文件夹实例代码
2017/03/07 Javascript
微信小程序实现循环动画效果
2018/07/16 Javascript
JavaScript实现PC端四格密码输入框功能
2020/02/19 Javascript
[42:32]VP vs RNG 2019国际邀请赛淘汰赛 败者组 BO3 第一场 8.21.mp4
2020/07/19 DOTA
python flask实现分页效果
2017/06/27 Python
基于Django的python验证码(实例讲解)
2017/10/23 Python
Python读取Json字典写入Excel表格的方法
2018/01/03 Python
使用python Fabric动态修改远程机器hosts的方法
2018/10/26 Python
详解Python_shutil模块
2019/03/15 Python
Django REST framework 分页的实现代码
2019/06/19 Python
Python shelve模块实现解析
2019/08/28 Python
Python调用graphviz绘制结构化图形网络示例
2019/11/22 Python
python 实现查询Neo4j多节点的多层关系
2019/12/23 Python
scrapy结合selenium解析动态页面的实现
2020/09/28 Python
纯HTML5+CSS3制作图片旋转
2016/01/12 HTML / CSS
Omio西班牙:全欧洲低价大巴、火车和航班搜索和比价
2017/02/11 全球购物
医药工作岗位求职信分享
2013/12/31 职场文书
结婚喜宴家长答谢词
2014/01/15 职场文书
岗位聘任书范文
2014/03/29 职场文书
《学会合作》教学反思
2014/04/12 职场文书
企业文化宣传标语
2014/06/09 职场文书
工伤认定行政答辩状
2015/05/22 职场文书
党员干部学法用法心得体会
2016/01/21 职场文书
python机器学习创建基于规则聊天机器人过程示例详解
2021/11/02 Python
DE1103使用报告
2022/04/05 无线电
深入理解 Golang 的字符串
2022/05/04 Golang