On this page
imghdr —确定图像的类型
源代码: Lib/imghdr.py
imghdr模块确定文件或字节流中包含的图像类型。
imghdr模块定义以下Function:
imghdr.what(* filename , h = None *)- 测试以* filename 命名的文件中包含的图像数据,并返回描述图像类型的字符串。如果提供了可选的 h ,则 filename 会被忽略,并且 h *会包含要测试的字节流。
 
在版本 3.6 中更改:接受path-like object。
可以识别以下图像类型,如下所示,返回值来自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' | 
      便携式网络图形 | 
'webp' | 
      WebP files | 
'exr' | 
      OpenEXR Files | 
3.5 版的新Function:添加了* exr 和 webp *格式。
您可以pass附加此变量来扩展imghdr可以识别的文件类型列表:
imghdr.tests- 执行各个测试的Function列表。每个函数都有两个参数:字节流和一个类似文件的打开对象。当使用字节流调用what()时,类似文件的对象将是
None。 
- 执行各个测试的Function列表。每个函数都有两个参数:字节流和一个类似文件的打开对象。当使用字节流调用what()时,类似文件的对象将是
 
如果测试成功,则测试函数应返回描述图像类型的字符串;如果失败,则返回None。
Example:
>>> import imghdr
>>> imghdr.what('bass.gif')
'gif'