# `imghdr` — Determina o tipo de uma imagem

Código-fonte: Lib/imghdr.py

Obsoleto desde a versão 3.11: The `imghdr` module is deprecated (see PEP 594 for details and alternatives).

The `imghdr` module determines the type of image contained in a file or byte stream.

The `imghdr` module defines the following function:

`imghdr.``what`(filename, h=None)

  Tests the image data contained in the file named by filename, and returns a string describing the image type. If optional h is provided, the filename is ignored and h is assumed to contain the byte stream to test.

  Alterado na versão 3.6: Aceita um objeto caminho ou similar.

The following image types are recognized, as listed below with the return value from `what()`:

Valor | Image format
--- | ---
`'rgb'` | SGI ImgLib Files
`'gif'` | GIF 87a and 89a Files
`'pbm'` | Portable Bitmap Files
`'pgm'` | Portable Graymap Files
`'ppm'` | Portable Pixmap Files
`'tiff'` | Arquivos TIFF
`'rast'` | Sun Raster Files
`'xbm'` | X Bitmap Files
`'jpeg'` | JPEG data in JFIF or Exif formats
`'bmp'` | BMP files
`'png'` | Portable Network Graphics
`'webp'` | WebP files
`'exr'` | OpenEXR Files

Novo na versão 3.5: The exr and webp formats were added.

You can extend the list of file types `imghdr` can recognize by appending to this variable:

`imghdr.``tests`

  A list of functions performing the individual tests. Each function takes two arguments: the byte-stream and an open file-like object. When `what()` is called with a byte-stream, the file-like object will be `None`.

  A função de teste deve retornar uma string descrevendo o tipo de imagem, se o teste for bem-sucedido, ou `None`, se falhar.

Exemplo:

    >>> import imghdr
    >>> imghdr.what('bass.gif')
    'gif'