imghdr —确定图像的类型

源代码: Lib/imghdr.py


imghdr模块确定文件或字节流中包含的图像类型。

imghdr模块定义以下Function:

  • imghdr. what(* filename h = None *)
    • 测试以* filename 命名的文件中包含的图像数据,并返回描述图像类型的字符串。如果提供了可选的 h ,则 filename 会被忽略,并且 h *会包含要测试的字节流。

在版本 3.6 中更改:接受path-like object

可以识别以下图像类型,如下所示,返回值来自what()

ValueImage format
'rgb'SGI ImgLib 文件
'gif'GIF 87a 和 89a 文件
'pbm'便携式位图文件
'pgm'便携式灰度图文件
'ppm'便携式 Pixmap 文件
'tiff'TIFF Files
'rast'Sun 光栅文件
'xbm'X 位图文件
'jpeg'JFIF 或 Exif 格式的 JPEG 数据
'bmp'BMP files
'png'便携式网络图形
'webp'WebP files
'exr'OpenEXR Files

3.5 版的新Function:添加了* exr webp *格式。

您可以pass附加此变量来扩展imghdr可以识别的文件类型列表:

  • imghdr. tests
    • 执行各个测试的Function列表。每个函数都有两个参数:字节流和一个类似文件的打开对象。当使用字节流调用what()时,类似文件的对象将是None

如果测试成功,则测试函数应返回描述图像类型的字符串;如果失败,则返回None

Example:

>>> import imghdr
>>> imghdr.what('bass.gif')
'gif'