- imghdr
python有一個自帶的函數,可以獲取圖片類型
f可以是一個文件路徑,也可以是一個打開的文件類型imghdr.what(f, h=None)
例如:
結果等價於import imghdr imghdr.what('path/to/ur/image')
import imghdr f = open('path/to/ur/image') imghdr.what(f.read())
- Imgae
from PIL import Image img = Image.open('path/to/ur/image') filetype = img.format()
- 獲取base64編碼圖片的格式
如果我們獲得的是一個base64編碼的圖片,想要得到他的圖片格式,需要對base64編碼圖片做一些轉變
傳過來的圖片
利用imghdr獲得圖片格式import base64 f = open('path/to/ur/image') img_b64 = base64.b64encode(f.read())
利用Image獲得圖片格式import imghdr img = base64.b64decode(img_b64) imghdr.what(None,img)
import io from PIL import Image img_bytes = io.BytesIO(base64.b64decode(img_b64)) img = Image.open(img_bytes) filetype = img.format()