来源:http://blog.csdn.net/aqwd2008/article/details/7506007

python 模块 chardet 下载及介绍

在处理字符串时,常常会遇到不知道字符串是何种编码,如果不知道字符串的编码就不能将字符串转换成需要的编码。面对多种不同编码的输入方式,是否会有一种有效的编码方式?chardet 是一个非常优秀的编码识别模块。

chardet 是 python 的第三方库,需要下载和安装。下载的地址有:

  • 1.推荐地址: http://download.csdn.net/download/aqwd2008/4256178
  • 2.官方地址:  http://pypi.python.org/pypi/chardet

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

在安装完 chardet 模块,我就可以使用它了,来看一段示例代码。

import chardet
from urllib import request# 可根据需要,选择不同的数据
TestData = request.urlopen('http://www.baidu.com/').read()
print(chardet.detect(TestData))# 运行结果:
# {'encoding': 'utf-8', 'confidence': 0.99, 'language': ''}

运行结果表示有99%的概率认为这段代码是 utf-8 编码方式。

另外一个相对高级的应用。

from urllib import request
from chardet.universaldetector import UniversalDetectorusock = request.urlopen('http://www.baidu.com/')# 创建一个检测对象
detector = UniversalDetector()
for line in usock.readlines():# 分块进行测试,直到达到阈值detector.feed(line)if detector.done:break# 关闭检测对象
detector.close()
usock.close()# 输出检测结果
print(detector.result)# 运行结果:
# {'encoding': 'utf-8', 'confidence': 0.99, 'language': ''}

应用背景,如果要对一个大文件进行编码识别,使用这种高级的方法,可以只读一部,去判别编码方式从而提高检测速度。如果希望使用一个检测对象检测多个数据,在每次检测完,一定要运行一下detector.reset()。清楚之前的数据。

python 模块 chardet下载方法及介绍相关推荐

  1. python利用什么来写模块-Python模块的制作方法实例分析

    本文实例讲述了Python模块的制作方法.分享给大家供大家参考,具体如下: 1 目的 利用setup.py将框架安装到python环境中,作为第三方模块来调用, 2 第一步:完成setup.py的编写 ...

  2. python模块下载过程_常用的python模块及安装方法

    bsddb3:BerkeleyDB的连接组件 Cheetah-1.0:我比较喜欢这个版本的cheetah cherrypy:一个WEB framework ctypes:用来调用动态链接库 DBUti ...

  3. 常用的python模块及安装方法

    adodb:我们领导推荐的数据库连接组件 bsddb3:BerkeleyDB的连接组件 Cheetah-1.0:我比较喜欢这个版本的cheetah cherrypy:一个WEB framework c ...

  4. 怎么在手机上下载python模块_python下载模块然后怎么安装

    python下载模块然后怎么安装? 推荐:<Python教程> python 安装模块的方法 学习python肯定是要调用许多的模块,那面怎么安装呢! 黄博主目前也就掌握了两种方法,你们有 ...

  5. python模块的使用方法_python中requests模块的使用方法

    本文实例讲述了python中requests模块的使用方法.分享给大家供大家参考.具体分析如下: 在HTTP相关处理中使用python是不必要的麻烦,这包括urllib2模块以巨大的复杂性代价获取综合 ...

  6. python模块大全下载_Python及其常用模块库下载及安装

    一.Python下载:https://www.python.org/downloads/ 二.Python模块下载:http://www.lfd.uci.edu/~gohlke/pythonlibs/ ...

  7. python 的内置方法zip()介绍

    转载至:https://blog.csdn.net/eric_sunah/article/details/20551087 定义:zip([iterable, ...]) zip()是Python的一 ...

  8. python模块批量安装方法_python离线批量安装依赖包

    [前提]:已安装pip,下载地址https://pypi.python.org/pypi/pip [步骤一]:打包已安装的依赖包 pip freeze >requirements.txt#生成已 ...

  9. Python Appium 元素定位方法简单介绍

    Python  Appium  元素定位 常用的八种定位方法(与selenium通用) id定位 name定位 Xpath定位 如下图,使用 uiautomatorviewer.bat 获取页面元素 ...

最新文章

  1. java异常return笔试题_Java笔试面试总结—try、catch、finally语句中有return 的各类情况...
  2. python算法实现源码_python 实现A_算法的示例代码
  3. Burpsuite技巧之MD5加密密码爆破、带验证码爆破
  4. Django04-2: ORM关系表\字段补充
  5. linux int64_t 头文件,这对int64_t的处理是GCC和Clang的错误吗?
  6. js解决客户端与服务器时间不一致的问题
  7. csv python 只写一次_在Python CSV Writer循环中写入一次头
  8. openwrt patch文件怎么用_openwrt 打补丁方式修改内核源码
  9. tomcat集群共享session
  10. 使用Selenium定位鼠标悬浮出现的下拉菜单
  11. Spring整合CXF发布及调用WebService
  12. SQL SERVER拼接字符串(字符串中有变量)
  13. 密码学的数学基础2-同余
  14. Python3入门机器学习之2.8scikit-learn中的Scaler
  15. UG NX二次开发(C#)-建模-判断一张面是孔面还是凸台面
  16. andriod studio页面跳转
  17. 监控Linux磁盘情况,进行邮件告警
  18. C语言基础:求解一元二次方程
  19. (深度学习快速入门)第三章第一节:多层感知器简介
  20. 推荐计划常见问题解答:有哪些问题是必须的?

热门文章

  1. 深度学习在文本领域的应用
  2. 论文浅尝 - ACL2020 | 用于多媒体事件提取的跨媒体结构化公共空间
  3. 干货 | 深度学习的可解释性研究(一):让模型「说人话」
  4. 从源码说说dispatchTouchEvent与onTouchEvent的关系以及OnTouchListener的用法
  5. 用scikit-learn学习主成分分析(PCA)
  6. 仅模糊背景图像而不是前面的文本
  7. Reparameterization Trick
  8. Spring体系常用方法(一)
  9. Atitit 通过调用gui接口杀掉360杀毒 360卫士  qq保镖等难以结束的进程(javac# php )...
  10. Centos环境下删除Oracle11g客户端文档