Viewing File: /opt/alt/python38/lib/python3.8/site-packages/chardet/__pycache__/charsetprober.cpython-38.pyc

U

<_9Yöã@s0ddlZddlZddlmZGdd„deƒZdS)éNé)ÚProbingStatec@sneZdZdZddd„Zdd„Zedd„ƒZd	d
„Zedd„ƒZ	d
d„Z
edd„ƒZedd„ƒZ
edd„ƒZdS)Ú
CharSetProbergffffffî?NcCsd|_||_t t¡|_dS©N)Ú_stateÚlang_filterÚloggingZ	getLoggerÚ__name__Zlogger)Úselfr©rúF/opt/alt/python38/lib/python3.8/site-packages/chardet/charsetprober.pyÚ__init__'szCharSetProber.__init__cCstj|_dSr)rZ	DETECTINGr©r
rrrÚreset,szCharSetProber.resetcCsdSrrrrrrÚcharset_name/szCharSetProber.charset_namecCsdSrr)r
ÚbufrrrÚfeed3szCharSetProber.feedcCs|jSr)rrrrrÚstate6szCharSetProber.statecCsdS)NgrrrrrÚget_confidence:szCharSetProber.get_confidencecCst dd|¡}|S)Ns([-])+ó )ÚreÚsub)rrrrÚfilter_high_byte_only=sz#CharSetProber.filter_high_byte_onlycCs\tƒ}t d|¡}|D]@}| |dd…¡|dd…}| ¡sL|dkrLd}| |¡q|S)u9
        We define three types of bytes:
        alphabet: english alphabets [a-zA-Z]
        international: international characters [€-ÿ]
        marker: everything else [^a-zA-Z€-ÿ]

        The input buffer can be thought to contain a series of words delimited
        by markers. This function works to filter all words that contain at
        least one international character. All contiguous sequences of markers
        are replaced by a single space ascii character.

        This filter applies to all scripts which do not use English characters.
        s%[a-zA-Z]*[€-ÿ]+[a-zA-Z]*[^a-zA-Z€-ÿ]?Néÿÿÿÿó€r)Ú	bytearrayrÚfindallÚextendÚisalpha)rÚfilteredZwordsZwordZ	last_charrrrÚfilter_international_wordsBsÿz(CharSetProber.filter_international_wordscCs¤tƒ}d}d}tt|ƒƒD]n}|||d…}|dkr<d}n|dkrHd}|dkr| ¡s||kr€|s€| |||…¡| d¡|d}q|s | ||d	…¡|S)
aÈ
        Returns a copy of ``buf`` that retains only the sequences of English
        alphabet and high byte characters that are not between <> characters.
        Also retains English alphabet and high byte characters immediately
        before occurrences of >.

        This filter can be applied to all scripts which contain both English
        characters and extended ASCII characters, but is currently only used by
        ``Latin1Prober``.
        Frró>ó<TrrN)rÚrangeÚlenrr)rrZin_tagÚprevZcurrZbuf_charrrrÚfilter_with_english_lettersgs"

z)CharSetProber.filter_with_english_letters)N)r	Ú
__module__Ú__qualname__ZSHORTCUT_THRESHOLDr
rÚpropertyrrrrÚstaticmethodrr r&rrrrr#s




$r)rrZenumsrÚobjectrrrrrÚ<module>s
Back to Directory File Manager