Viewing File: /opt/alt/python35/lib/python3.5/site-packages/chardet/__pycache__/universaldetector.cpython-35.pyc
<_9Y0 @ s d Z d d l Z d d l Z d d l Z d d l m Z d d l m Z m Z m Z d d l
m Z d d l m
Z
d d l m Z d d l m Z Gd
d d e Z d S)a
Module containing the UniversalDetector detector class, which is the primary
class a user of ``chardet`` should use.
:author: Mark Pilgrim (initial port to Python)
:author: Shy Shalom (original C code)
:author: Dan Blanchard (major refactoring for 3.0)
:author: Ian Cordasco
N )CharSetGroupProber)
InputStateLanguageFilterProbingState)EscCharSetProber)Latin1Prober)MBCSGroupProber)SBCSGroupProberc @ s e Z d Z d Z d Z e j d Z e j d Z e j d Z d d d d d
d d d
d d d d d d d d i Z
e j d d Z
d d Z d d Z d d Z d S)UniversalDetectoraq
The ``UniversalDetector`` class underlies the ``chardet.detect`` function
and coordinates all of the different charset probers.
To get a ``dict`` containing an encoding and its confidence, you can simply
run:
.. code::
u = UniversalDetector()
u.feed(some_bytes)
u.close()
detected = u.result
g?s [-]s (|~{)s [-]z
iso-8859-1zWindows-1252z
iso-8859-2zWindows-1250z
iso-8859-5zWindows-1251z
iso-8859-6zWindows-1256z
iso-8859-7zWindows-1253z
iso-8859-8zWindows-1255z
iso-8859-9zWindows-1254ziso-8859-13zWindows-1257c C sq d | _ g | _ d | _ d | _ d | _ d | _ d | _ | | _ t j t
| _ d | _ | j
d S)N)_esc_charset_prober_charset_probersresultdone _got_data_input_state
_last_charlang_filterlogging getLogger__name__logger_has_win_bytesreset)selfr r /universaldetector.py__init__Q s zUniversalDetector.__init__c C s d d d d d d i | _ d | _ d | _ d | _ t j | _ d | _ | j ra | j j x | j
D] } | j qk Wd S)z
Reset the UniversalDetector and all of its probers back to their
initial states. This is called by ``__init__``, so you only need to
call this directly in between analyses of different documents.
encodingN
confidenceg languageF )r r r r r
PURE_ASCIIr r r r r
)r proberr r r r ^ s
zUniversalDetector.resetc C sF | j r
d St | s d St | t s8 t | } | j sc| j t j rq d d d d d d i | _ n | j t j t j
f r d d d d d d i | _ n | j d r d d
d d d d i | _ nc | j d rd d d d d d i | _ n6 | j t j t j f r:d d
d d d d i | _ d | _ | j d d k rcd | _ d S| j
t j k r| j j | rt j | _
n7 | j
t j k r| j j | j | rt j | _
| d d | _ | j
t j k rd| j s
t | j | _ | j j | t j k rBd | j j d | j j d | j j i | _ d | _ n | j
t j k rB| j st | j g | _ | j t! j"