zmc
2023-08-08 e792e9a60d958b93aef96050644f369feb25d61b
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
U
H=®dnã@sXddlmZddlmZddlmZmZmZddlm    Z    m
Z
m Z m Z Gdd„deƒZ dS)é)Ú CharSetProber)ÚCodingStateMachine)ÚLanguageFilterÚ ProbingStateÚ MachineState)Ú HZ_SM_MODELÚISO2022CN_SM_MODELÚISO2022JP_SM_MODELÚISO2022KR_SM_MODELcsVeZdZdZd‡fdd„    Z‡fdd„Zedd„ƒZed    d
„ƒZd d „Z    d d„Z
‡Z S)ÚEscCharSetProberz¼
    This CharSetProber uses a "code scheme" approach for detecting encodings,
    whereby easily recognizable escape or shift sequences are relied on to
    identify these encodings.
    Ncs tt|ƒj|dg|_|jtj@rD|j tt    ƒ¡|j tt
ƒ¡|jtj @r`|j tt ƒ¡|jtj @r||j ttƒ¡d|_d|_d|_d|_| ¡dS)N)Ú lang_filter)Úsuperr Ú__init__Ú    coding_smr rÚCHINESE_SIMPLIFIEDÚappendrrrÚJAPANESEr    ÚKOREANr
Úactive_sm_countÚ_detected_charsetÚ_detected_languageÚ_stateÚreset)Úselfr ©Ú    __class__©úTD:\z\workplace\VsCode\pyvenv\venv\Lib\site-packages\pip/_vendor/chardet/escprober.pyr*s   zEscCharSetProber.__init__csJtt|ƒ ¡|jD]}|sqd|_| ¡qt|jƒ|_d|_d|_dS)NT)    r r rrÚactiveÚlenrrr)rrrrrr:s
 
 zEscCharSetProber.resetcCs|jS©N©r©rrrrÚ charset_nameEszEscCharSetProber.charset_namecCs|jSr )rr"rrrÚlanguageIszEscCharSetProber.languagecCs|jr
dSdSdS)Ng®Gáz®ï?gr!r"rrrÚget_confidenceMszEscCharSetProber.get_confidencecCs¤|D]˜}|jD]Œ}|r|jsq| |¡}|tjkrhd|_|jd8_|jdkrštj|_|j    Sq|tj
krtj |_|  ¡|_ |j|_|j    Sqq|j    S)NFré)rrÚ
next_staterÚERRORrrÚNOT_MErÚstateÚITS_MEÚFOUND_ITÚget_coding_state_machinerr$r)rÚbyte_strÚcrÚ coding_staterrrÚfeedSs"
 
 
 
 
 
 
zEscCharSetProber.feed)N) Ú__name__Ú
__module__Ú __qualname__Ú__doc__rrÚpropertyr#r$r%r1Ú __classcell__rrrrr #s 
 
r N)Ú charsetproberrÚcodingstatemachinerÚenumsrrrÚescsmrrr    r
r rrrrÚ<module>s