File: //lib/python3/dist-packages/chardet/cli/__pycache__/chardetect.cpython-310.pyc
o
�n�_�
� @ sv d Z ddlmZmZmZ ddlZddlZddlmZ ddl m
Z
ddlmZ d
dd �Z
dd
d�Zedkr9e� dS dS )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|�}|�|� |jr nq|�� |j}tr'|�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 jdd�}|jddt �d�dtrtjntjjgd� |jdd d
�t �d� |�
| �}|jD ]}|�� r;t
dtjd
� t
t||j�� q.dS )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$ z�You 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&