imghdr --- 推測圖像類型?

源代碼 Lib/imghdr.py

Deprecated since version 3.11, will be removed in version 3.13: The imghdr module is deprecated (see PEP 594 for details and alternatives).


imghdr 模塊推測文件或字節(jié)流中的圖像的類型。

imghdr 模塊定義了以下類型:

imghdr.what(file, h=None)?

測試包含在名為 file 的文件中的圖像數(shù)據(jù),并返回描述該圖像類型的字符串。 如果提供了可選的 h,則 file 參數(shù)會被忽略并且 h 會被視為包含要測試的字節(jié)流。

在 3.6 版更改: 接受一個 path-like object。

接下來的圖像類型是可識別的,返回值來自 what()

圖像格式

'rgb'

SGI 圖像庫文件

'gif'

GIF 87a 和 89a 文件

'pbm'

便攜式位圖文件

'pgm'

便攜式灰度圖文件

'ppm'

便攜式像素表文件

'tiff'

TIFF 文件

'rast'

Sun 光柵文件

'xbm'

X 位圖文件

'jpeg'

JFIF 或 Exif 格式的 JPEG 數(shù)據(jù)

'bmp'

BMP 文件

'png'

便攜式網(wǎng)絡圖像

'webp'

WebP 文件

'exr'

OpenEXR 文件

3.5 新版功能: exrwebp 格式被添加。

你可以擴展此 imghdr 可以被追加的這個變量識別的文件格式的列表:

imghdr.tests?

執(zhí)行單個測試的函數(shù)列表。每個函數(shù)都有兩個參數(shù):字節(jié)流和類似開放文件的對象。當 what() 用字節(jié)流調(diào)用時,類文件對象將是 None。

如果測試成功,這個測試函數(shù)應當返回一個描述圖像類型的字符串,否則返回 None。

示例:

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