imghdr — Определение типа изображения
Исходный код: Lib/imghdr.py
Модуль imghdr определяет тип изображения, содержащегося в файле или потоке байтов.
Модуль imghdr определяет следующую функцию:
-
imghdr.what(filename[, h]) -
Проверяет данные изображения, содержащиеся в файле с именем filename, и возвращает строку, описывающую тип изображения. Если задан необязательный параметр h, имя файла игнорируется, и предполагается, что h содержит поток байтов для проверки.
Следующие типы изображений распознаются, как перечислены ниже со значением возвращаемым из what():
Значение | Формат изображения |
|---|---|
| Файлы SGI ImgLib |
| Файлы GIF 87a и 89a |
| Файлы Portable Bitmap |
| Файлы Portable Graymap |
| Файлы Portable Pixmap |
| Файлы TIFF |
| Файлы Sun Raster |
| Файлы X Bitmap |
| Данные JPEG в форматах JFIF или Exif |
| Файлы BMP |
| Файлы Portable Network Graphics |
Добавлена в версии 2.5: Обнаружение Exif.
Вы можете расширить список типов файлов, которые imghdr может распознать, добавив в эту переменную:
-
imghdr.tests -
Список функций, выполняющих отдельные тесты. Каждая функция принимает два аргумента: поток байтов и открытый файл-подобный объект. Когда
what()вызывается с потоком байтов, объект-подобный файлу будетNone.Функция тестирования должна вернуть строку, описывающую тип изображения, если тест прошел успешно, или
Noneв случае неудачи.
Пример:
>>> import imghdr
>>> imghdr.what('bass.gif')
'gif'
© 2001–2020 Python Software Foundation
Licensed under the PSF License.
https://docs.python.org/2.7/library/imghdr.html