python / 2.7.15 / all / library-imghdr.html

21.8. imghdr —确定图像的类型

源代码: Lib/imghdr.py


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

imghdr模块定义以下Function:

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

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

Value Image 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' 便携式网络图形

2.5 版的新Function:Exif 检测。

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

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

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

Example:

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