Рубрики
Без рубрики

Как проверить, является ли файл действительным изображением с Python

Получите практические, реальные навыки Python на наших ресурсах и пути

Автор оригинала: Mike Driscoll.

У Python есть много модулей в своей стандартной библиотеке. Тот, который часто упускается из виду Imghdr который позволяет идентифицировать, какой тип изображения содержится в файле, байтовом потоке или подобном пути.

Imghdr Можно распознать следующие типы изображений:

  • RGB.
  • дар
  • упс
  • PGM
  • промежуток
  • потрясающий
  • расти.
  • xbm.
  • JPEG/JPG
  • BMP.
  • портить
  • WebP.
  • экзек

Вот как вы будете использовать IMGHDR для обнаружения типа изображения файла:

>>> import imghdr
>>> path = 'python.jpg'
>>> imghdr.what(path)
'jpeg'
>>> path = 'python.png'
>>> imghdr.what(path)
'png'

Все, что вам нужно сделать, это пройти путь к imghdr. Что (путь) И это скажет вам, что он думает, что тип изображения.

Альтернативный метод использования будет использовать Пакет подушек Что вы можете установить с PIP, если у вас его еще нет.

Вот как вы можете использовать подушку:

>>> from PIL import Image
>>> img = Image.open('/home/mdriscoll/Pictures/all_python.jpg')
>>> img.format
'JPEG'

Этот метод почти так же легко, как и использование Imghdr Отказ В этом случае вам нужно создать Изображение объект, а затем позвонить его Формат атрибут. Подушка опоры Дополнительные типы изображений чем Imghdr , но документация на самом деле не говорит, если Формат Атрибут будет работать для всех этих типов изображений.

Во всяком случае, я надеюсь, что это поможет вам идентифицировать тип изображения ваших файлов.