国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python中動態(tài)檢測編碼chardet的使用教程

2020-01-04 16:56:48
字體:
供稿:網(wǎng)友

前言

在互聯(lián)網(wǎng)的世界里,每個頁面都使用了編碼,但是形形色色的編碼讓我們的代碼何以得知其棉麻格式呢?charset將很好的解決這個問題。

1. chardet

chardet是Python社區(qū)提供了一個類庫包,方便我們在代碼中動態(tài)檢測當(dāng)前頁面或者文件中的編碼格式信息。接口非常的簡單和易用。

Project主頁: https://github.com/chardet/chardet

文檔主頁: http://chardet.readthedocs.io/en/latest/usage.html

2. 使用示例

Notice: 筆者使用的python/95401.html">python/52886.html">python 3.5 +

Case 1: 檢測特定頁面的編碼格式

import chardetimport urllib.requestTestData = urllib.request.urlopen('http://www.baidu.com/').read()print(chardet.detect(TestData))

輸出結(jié)果:

{'confidence': 0.99, 'encoding': 'utf-8'}

結(jié)果分析, 其準(zhǔn)確率99%的概率,編碼格式為utf-8

使用說明:detect()為其關(guān)鍵方法

Case 2: 增量檢測編碼格式

import urllib.requestfrom chardet.universaldetector import UniversalDetectorusock = urllib.request.urlopen('http://yahoo.co.jp/')detector = UniversalDetector()for line in usock.readlines():detector.feed(line)if detector.done: breakdetector.close()usock.close()print(detector.result)

輸出結(jié)果:

{'confidence': 0.99, 'encoding': 'utf-8'}

說明: 為了提高預(yù)測的準(zhǔn)確性,基于dector.feed()來實(shí)現(xiàn)持續(xù)的信息輸入,在信息足夠充足之后結(jié)束信息輸入,給出相應(yīng)的預(yù)測和判斷。

如果需要復(fù)用detector方法,需要進(jìn)行detector.reset()進(jìn)行重置,從而可以復(fù)用。

Case 3: 在安裝chardet之后,可以基于命令行來檢測文件編碼

% chardetect somefile someotherfilesomefile: windows-1252 with confidence 0.5someotherfile: ascii with confidence 1.0

在系統(tǒng)層面,可以直接基于命令行來進(jìn)行文件編碼檢測,非常簡單易用。

3. 總結(jié)

chardet是非常易用和功能強(qiáng)大的Python包,相信大家在web世界中遨游之時,肯定會用上這個chardet的。 如有問題,歡迎大家反饋給我。

好了,以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對VEVB武林網(wǎng)的支持。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 蒲城县| 谢通门县| 长白| 郸城县| 武冈市| 六盘水市| 江陵县| 井研县| 微山县| 永善县| 柳江县| 东平县| 东光县| 盐山县| 安陆市| 绥芬河市| 新巴尔虎右旗| 玉田县| 舞阳县| 临城县| 上思县| 上饶市| 镇赉县| 乌苏市| 新兴县| 江北区| 都匀市| 乌鲁木齐县| 汽车| 滦南县| 新巴尔虎左旗| 大兴区| 临安市| 靖宇县| 大厂| 安庆市| 安陆市| 昭觉县| 扶绥县| 屯门区| 合川市|