o
    #j                     @  s   d Z ddlmZ ddlZddlZddlmZ ddlZddlm	Z	m
Z
 ddlmZ ddlmZ dd	 eD d
g ZdddZddddZedkrLe  dS dS )z#Command-line interface for chardet.    )annotationsN)Path)DEFAULT_MAX_BYTESISO_TO_LANGUAGE)EncodingEra)DetectionDictc                 C  s"   g | ]}|  d kr|j qS )   )	bit_countnamelower).0e r   L/var/www/html/Deteccion_Ine/venv/lib/python3.10/site-packages/chardet/cli.py
<listcomp>   s   " r   allresultr   labelstrminimalboollanguagereturnNonec                C  s   |r|r| d p	d}t | d  d|  d
S t | d  d
S |rG| d p&d}t|| }t | d| d  d| d| d| d  	 d
S t | d| d  d	| d   d
S )z#Print a detection result to stdout.r   Zundencoding : z (z) with confidence Z
confidencez with confidence N)printr   gettitle)r   r   r   r   Zisor
   r   r   r   _print_result   s   $r    argvlist[str] | Nonec                 C  s  t jdd}|jdddd |jddd	d
 |jddddd
 |jdddtdd |jddddd |jddddd |jdddd |jdddd |jd d!d"tj d# || }|jrft|j	  ntj
}|jrwd$d% |jd&D nd}|jrd'd% |jd&D nd}|jr&d(}|jD ]}zt|d)}|t}	W d   n1 sw   Y  W n# ty }
 ztd*| d+|
 tjd, |d-7 }W Y d}
~
qd}
~
ww ztj|	||||j|jd.}W n$ ty	 }
 ztd*| d/|
 tjd, |d-7 }W Y d}
~
qd}
~
ww t|||j|jd0 q|t|jkr$td- dS dS tj j!t}	ztj|	||||j|jd.}W n" ty^ }
 ztd1|
 tjd, td- W Y d}
~
nd}
~
ww t|d2|j|jd0 dS )3zwRun the ``chardetect`` command-line tool.

    :param argv: Command-line arguments.  Defaults to ``sys.argv[1:]``.
    z#Detect character encoding of files.)descriptionfiles*zFiles to detect encoding of)nargshelpz	--minimal
store_truezOutput only the encoding name)actionr'   z-lz
--languagez#Include detected language in outputz-ez--encoding-eraNzEncoding era filter)defaultchoicesr'   z-iz--include-encodingsz-Comma-separated list of encodings to consider)r*   r'   z-xz--exclude-encodingsz,Comma-separated list of encodings to excludez--no-match-encodingcp1252zCEncoding to return when detection is inconclusive (default: cp1252)z--empty-input-encodingzutf-8z3Encoding to return for empty input (default: utf-8)z	--versionversionzchardet )r)   r-   c                 S     g | ]}|  qS r   stripr   sr   r   r   r   ^       zmain.<locals>.<listcomp>,c                 S  r.   r   r/   r1   r   r   r   r   c   r3   r   rbzchardetect: r   )filer   )encoding_erainclude_encodingsexclude_encodingsno_match_encodingempty_input_encodingz: detection failed: )r   r   z%chardetect: stdin: detection failed: stdin)"argparseArgumentParseradd_argument
_ERA_NAMESchardet__version__
parse_argsr7   r   upperZALLr8   splitr9   r$   r   openreadr   OSErrorr   sysstderrdetectr:   r;   	Exceptionr    r   r   lenexitr<   buffer)r!   parserargsZeraincludeexcludeerrorsfilepathfdatar   r   r   r   r   main&   s   



rX   __main__)
r   r   r   r   r   r   r   r   r   r   )N)r!   r"   r   r   )__doc__
__future__r   r=   rI   pathlibr   rA   Zchardet._utilsr   r   Zchardet.enumsr   Zchardet.pipeliner   r@   r    rX   __name__r   r   r   r   <module>   s    
o
