使用chardet检测网页的编码

下载:http://download.csdn.net/download/aqwd2008/4256178

官方地址:http://pypi.python.org/pypi/chardet

如果采用源代码安装方法,有可能会提示缺少setuptools这个模块。因此这里我们采用另外一种更为方便的安装方法,不论你选择哪种安装包,将它解压得到其中的文件夹【chardet】将这个文件夹复制到【python安装根目录\Lib\site-packages】下,确保这个位置可以被python引用到。如果不能被引用到请加入环境变量。

测试网页编码

importurllib

rawdata = urllib.urlopen('http://gs.amac.org.cn/amac-infodisc/res/pof/manager/138.html').read()

importchardet

fencoding= chardet.detect(rawdata)

print fencoding

另外一个高级的代码

importurllib

fromchardet.universaldetectorimportUniversalDetector

usock = urllib.urlopen('http://www.baidu.com/')

#创建一个检测对象

detector = UniversalDetector()

for line in usock.readlines():

#分块进行测试,直到达到阈值

detector.feed(line)

ifdetector.done:break

#关闭检测对象

detector.close()

usock.close()

#输出检测结果

printdetector.result

运行结果:

{'confidence':0.99,'encoding':'GB2312'}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • # Python 资源大全中文版 我想很多程序员应该记得 GitHub 上有一个 Awesome - XXX 系列...
    aimaile阅读 26,579评论 6 427
  • Python 二三事 面向初学者介绍Python相关的一些工具,以及可能遇到的常见问题。 最后更新 2013.5....
    hzyido阅读 67,812评论 2 42
  • 本学习笔记针对有其他语言基础的情况下记录的, 主要记录一些与其他语言不一样的地方, 使用于快速学习. 常用指令 p...
    GrayLand阅读 1,082评论 0 3
  • 每个人的心里都有块最柔软的芳土,那儿藏放着一个不能厮守一生一世的人。正因为有了浓烈的爱,所以才不愿把对方放出自...
    竹鸿初阅读 289评论 0 1
  • 因为周六休息的特别好,又是吃、又是睡大觉、又是休闲娱乐的,前一周的感冒好的差不多了,昨天早晨醒来时,嗓子也没那么疼...
    joshua_1988阅读 283评论 0 0