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