:mod:”imghdr” — Determinar el tipo de imagen¶
Código fuente: :source:”Lib/imghdr.py”
El módulo imghdr
determina el tipo de imagen contenida en un archivo o secuencia de bytes.
El módulo imghdr
define la siguiente función:
-
imghdr.
what
(filename, h=None)¶ Comprueba los datos de imagen contenidos en el archivo mencionado en filename y retorna una cadena de caracteres que describe el tipo de imagen. Si se proporciona el argumento opcional h, se ignora filename y se supone que h contiene la secuencia de bytes que se va a analizar.
Distinto en la versión 3.6: Acepta un path-like object.
Se reconocen los siguientes tipos de imagen, enumerados a continuación con el valor devuelto de what()
:
Valor |
Formato de imagen |
---|---|
|
Archivos SGI ImgLib |
|
Archivos GIF 87a y 89a |
|
Archivos Portable Bitmap |
|
Archivos Portable Graymap |
|
Archivos Portable Pixmap |
|
Archivos TIFF |
|
Archivos Sun Raster |
|
Archivos X Bitmap |
|
Datos JPEG en formatos JFIF o Exif |
|
Archivos BMP |
|
Portable Network Graphics |
|
Archivos WebP |
|
Archivos OpenEXR |
Nuevo en la versión 3.5: Se añadieron los formatos exr y webp.
Puede ampliar la lista de tipos de archivo que imghdr
puede reconocer agregándolos a esta variable:
-
imghdr.
tests
¶ Una lista de funciones que realizan las comprobaciones individuales. Cada función toma dos argumentos: la secuencia de bytes y un objeto abierto de tipo archivo. Cuando
what()
es llamada con una secuencia de bytes, el objeto de tipo archivo seráNone
.La función de comprobación debería retornar una cadena de caracteres que describa el tipo de imagen si la comprobación se realizó correctamente o “”Ninguno”” si ha fallado.
Ejemplo:
>>> import imghdr
>>> imghdr.what('bass.gif')
'gif'