Jugement de codage en Python

Jugement de codage en Python

Bibliothèque classique

Présentation de Chardet

Lisez la chaîne d'octets et déduisez l'encodage utilisé à partir de ce modèle.

Il existe deux méthodes de base pour utiliser chardet

  1. Demandez à la fonction `` détecter '' de lire la chaîne d'octets
  2. Si la taille de la chaîne d'octets à lire est trop grande, créez un objet UniversalDetector et chargez-le petit à petit avec la méthode `` `feed```.

Méthode 1

import chardet
from urllib.request import urlopen

with urlopen('http://qiita.com/') as response:
    html = response.read()
    print(chardet.detect(html))  // {'confidence': 0.99, 'encoding': 'utf-8'}

Méthode 2

Interfaces principales du détecteur universel :

from chardet.universaldetector import UniversalDetector
from urllib.request import urlopen

detector = UniversalDetector()

with urlopen('http://qiita.com/') as response:
    for l in response:
        detector.feed(l)
        if detector.done:
            break
detector.close()
print(detector.result)  // {'confidence': 0.99, 'encoding': 'utf-8'}

C'est facile à faire, Detector.feed '' pour lire Detector '' ligne par ligne, et `` Detecor.done '' pour vérifier si le jugement est complet. Ensuite, le flux d'affichage du résultat à la fin.

Pour approfondir

  • [Comment ça marche] dans la documentation chardet (https://chardet.readthedocs.org/en/latest/how-it-works.html)
  • La première moitié du [Chapitre 15] de Dive Into Python 3 (http://diveintopython3-ja.rdy.jp/case-study-porting-chardet-to-python-3.html)

Recommended Posts

Jugement de codage en Python
Encodage base64 des images en Python 3
Encodage Python
Quadtree en Python --2
Python en optimisation
CURL en Python
Métaprogrammation avec Python
Python 3.3 avec Anaconda
SendKeys en Python
Époque en Python
Discord en Python
Allemand en Python
DCI en Python
tri rapide en python
nCr en python
N-Gram en Python
Programmation avec Python
Constante en Python
FizzBuzz en Python
Sqlite en Python
Étape AIC en Python
LINE-Bot [0] en Python
CSV en Python
Assemblage inversé avec Python
Réflexion en Python
Constante en Python
nCr en Python.
format en python
Scons en Python 3
Puyopuyo en python
python dans virtualenv
PPAP en Python
Quad-tree en Python
Réflexion en Python
Chimie avec Python
Hashable en Python
DirectLiNGAM en Python
LiNGAM en Python
Aplatir en Python
Aplatir en python
Pour définir le codage par défaut sur utf-8 en python
Liste triée en Python
AtCoder # 36 quotidien avec Python
Texte de cluster en Python
AtCoder # 2 tous les jours avec Python
Daily AtCoder # 32 en Python
Daily AtCoder # 6 en Python
Daily AtCoder # 18 en Python
Modifier les polices en Python
Motif singleton en Python
Opérations sur les fichiers en Python
Lire DXF avec python
Daily AtCoder # 53 en Python
Séquence de touches en Python
Utilisez config.ini avec Python
Daily AtCoder # 33 en Python
Résoudre ABC168D en Python
Distribution logistique en Python