imghdr
— Определяет тип изображения¶
Модуль imghdr
определяет тип изображения, содержащегося в файле или
потоке байтов.
Модуль imghdr
определяет следующую функцию:
-
imghdr.
what
(filename, h=None)¶ Проверяет данные изображения, содержащиеся в файле с именем filename, и возвращает строку, определяющую тип изображения. Если указан необязательный h, filename игнорируется, и предполагается, что h содержит проверяемый поток байтов.
Изменено в версии 3.6: Принимает путеподобный объект.
Распознаются следующие перечисленные ниже типы изображений, с возвращаемым
значением из what()
:
Значение | Формат изображения |
---|---|
'rgb' |
SGI ImgLib Файлы |
'gif' |
GIF 87a и 89a Файлы |
'pbm' |
Portable Bitmap Файлы |
'pgm' |
Portable Graymap Файлы |
'ppm' |
Portable Pixmap Файлы |
'tiff' |
TIFF Файлы |
'rast' |
Sun Raster Файлы |
'xbm' |
X Bitmap Файлы |
'jpeg' |
Данные JPEG в форматах JFIF или Exif |
'bmp' |
BMP Файлы |
'png' |
Portable Network Graphics |
'webp' |
WebP Файлы |
'exr' |
OpenEXR Файлы |
Добавлено в версии 3.5: Добавлены форматы exr и webp.
Вы можете расширить список распознаваемых imghdr
типов файлов,
добавив к этой переменной:
-
imghdr.
tests
¶ Список функций, выполняющих отдельные тесты. Каждая функция принимает два аргумента: поток байтов и открытый файловый объект. Когда
what()
вызывается с потоком байтов, файлоподобный объект будетNone
.Тестовая функция должна возвращать строку, содержащую тип изображения, если проверка прошла успешно, или
None
, если она не удалась.
Пример:
>>> import imghdr
>>> imghdr.what('bass.gif')
'gif'