o
    n_
                     @   sv   d Z ddlmZmZmZ ddlZddlZddlmZ ddl	m
Z
 ddlmZ ddd	Zdd
dZedkr9e  dS dS )a  
Script which takes one or more file paths and reports on their detected
encodings

Example::

    % chardetect somefile someotherfile
    somefile: windows-1252 with confidence 0.5
    someotherfile: ascii with confidence 1.0

If no paths are provided, it takes its input from stdin.

    )absolute_importprint_functionunicode_literalsN)__version__)PY2)UniversalDetectorstdinc                 C   sv   t  }| D ]}t|}|| |jr nq|  |j}tr'|t	 d}|d r6d
||d |d S d
|S )z
    Return a string describing the probable encoding of a file or
    list of strings.

    :param lines: The lines to get the encoding of.
    :type lines: Iterable of bytes
    :param name: Name of file or collection of lines
    :type name: str
    ignoreencodingz{}: {} with confidence {}
confidencez{}: no result)r   	bytearrayfeeddonecloseresultr   decodesysgetfilesystemencodingformat)linesnameuliner    r   8/usr/lib/python3/dist-packages/chardet/cli/chardetect.pydescription_of   s    


r   c                 C   s   t jdd}|jddt ddtrtjntjjgd |jdd	d
t	d |
| }|jD ]}| r;tdtjd tt||j q.dS )z
    Handles command line arguments and gets things started.

    :param argv: List of arguments, as if specified on the command-line.
                 If None, ``sys.argv[1:]`` is used instead.
    :type argv: list of str
    zVTakes one or more file paths and reports their detected                      encodings)descriptioninputz^File whose encoding we would like to determine.                               (default: stdin)rb*)helptypenargsdefaultz	--versionversionz%(prog)s {})actionr$   zYou are running chardetect interactively. Press CTRL-D twice at the start of a blank line to signal the end of your input. If you want help, run chardetect --help
)fileN)argparseArgumentParseradd_argumentFileTyper   r   r   bufferr   r   
parse_argsr   isattyprintstderrr   r   )argvparserargsfr   r   r   main5   s&   	


r4   __main__)r   )N)__doc__
__future__r   r   r   r'   r   chardetr   chardet.compatr   chardet.universaldetectorr   r   r4   __name__r   r   r   r   <module>   s    


