SILENT KILLERPanel

Current Path: > > opt > hc_python > lib > > > python3.12 > site-packages > charset_normalizer


Operation   : Linux premium131.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64
Software     : Apache
Server IP    : 162.0.232.56 | Your IP: 216.73.216.111
Domains      : 1034 Domain(s)
Permission   : [ 0755 ]

Files and Folders in: //opt/hc_python/lib///python3.12/site-packages/charset_normalizer

NameTypeSizeLast ModifiedActions
__pycache__ Directory - -
cli Directory - -
__init__.py File 1590 bytes April 04 2025 08:02:27.
__main__.py File 109 bytes April 04 2025 08:02:27.
api.py File 22617 bytes April 04 2025 08:02:27.
cd.py File 12522 bytes April 04 2025 08:02:27.
constant.py File 40477 bytes April 04 2025 08:02:27.
legacy.py File 2328 bytes April 04 2025 08:02:27.
md.cpython-312-x86_64-linux-gnu.so File 16064 bytes April 04 2025 08:02:27.
md.py File 20036 bytes April 04 2025 08:02:27.
md__mypyc.cpython-312-x86_64-linux-gnu.so File 280904 bytes April 04 2025 08:02:27.
models.py File 12394 bytes April 04 2025 08:02:27.
py.typed File 0 bytes April 04 2025 08:02:27.
utils.py File 12002 bytes April 04 2025 08:02:27.
version.py File 115 bytes April 04 2025 08:02:27.

Reading File: //opt/hc_python/lib///python3.12/site-packages/charset_normalizer/legacy.py

from __future__ import annotations

from typing import TYPE_CHECKING, Any
from warnings import warn

from .api import from_bytes
from .constant import CHARDET_CORRESPONDENCE

# TODO: remove this check when dropping Python 3.7 support
if TYPE_CHECKING:
    from typing_extensions import TypedDict

    class ResultDict(TypedDict):
        encoding: str | None
        language: str
        confidence: float | None


def detect(
    byte_str: bytes, should_rename_legacy: bool = False, **kwargs: Any
) -> ResultDict:
    """
    chardet legacy method
    Detect the encoding of the given byte string. It should be mostly backward-compatible.
    Encoding name will match Chardet own writing whenever possible. (Not on encoding name unsupported by it)
    This function is deprecated and should be used to migrate your project easily, consult the documentation for
    further information. Not planned for removal.

    :param byte_str:     The byte sequence to examine.
    :param should_rename_legacy:  Should we rename legacy encodings
                                  to their more modern equivalents?
    """
    if len(kwargs):
        warn(
            f"charset-normalizer disregard arguments '{','.join(list(kwargs.keys()))}' in legacy function detect()"
        )

    if not isinstance(byte_str, (bytearray, bytes)):
        raise TypeError(  # pragma: nocover
            "Expected object of type bytes or bytearray, got: " "{}".format(
                type(byte_str)
            )
        )

    if isinstance(byte_str, bytearray):
        byte_str = bytes(byte_str)

    r = from_bytes(byte_str).best()

    encoding = r.encoding if r is not None else None
    language = r.language if r is not None and r.language != "Unknown" else ""
    confidence = 1.0 - r.chaos if r is not None else None

    # Note: CharsetNormalizer does not return 'UTF-8-SIG' as the sig get stripped in the detection/normalization process
    # but chardet does return 'utf-8-sig' and it is a valid codec name.
    if r is not None and encoding == "utf_8" and r.bom:
        encoding += "_sig"

    if should_rename_legacy is False and encoding in CHARDET_CORRESPONDENCE:
        encoding = CHARDET_CORRESPONDENCE[encoding]

    return {
        "encoding": encoding,
        "language": language,
        "confidence": confidence,
    }

SILENT KILLER Tool