作用
一个小巧自由开放Python开发包,主要用来获得文件类型。
支持版本:
python2/python3
安装:
pip install filetype
功能特色
简单友好的API
支持宽范围文件类型
提供文件扩展名和MIME类型判断
文件的MIME类型扩展新增
通过文件(图像、视频、音频…)简单分析
可插拔:添加新的自定义类型的匹配
快,即使处理大文件
只需要前261个字节表示的最大文件头,这样你就可以通过一个单字节
依赖自由(只是Python代码,没有C的扩展,没有libmagic绑定)
跨平台文件识别
代码示例:
import filetype def main(): kind = filetype.guess('tests/fixtures/sample.jpg') if kind is None: print('Cannot guess file type!') return print('File extension: %s' % kind.extension) print('File MIME type: %s' % kind.mime) if __name__ == '__main__': main()
支持类型
图片
jpg – image/jpeg
png – image/png
gif – image/gif
webp – image/webp
cr2 – image/x-canon-cr2
tif – image/tiff
bmp – image/bmp
jxr – image/vnd.ms-photo
psd – image/vnd.adobe.photoshop
ico – image/x-icon
视频
mp4 – video/mp4
m4v – video/x-m4v
mkv – video/x-matroska
webm – video/webm
mov – video/quicktime
avi – video/x-msvideo
wmv – video/x-ms-wmv
mpg – video/mpeg
flv – video/x-flv
音频
mid – audio/midi
mp3 – audio/mpeg
m4a – audio/m4a
ogg – audio/ogg
flac – audio/x-flac
wav – audio/x-wav
amr – audio/amr
资料库
epub – application/epub+zip
zip – application/zip
tar – application/x-tar
rar – application/x-rar-compressed
gz – application/gzip
bz2 – application/x-bzip2
7z – application/x-7z-compressed
xz – application/x-xz
pdf – application/pdf
exe – application/x-msdownload
swf – application/x-shockwave-flash
rtf – application/rtf
eot – application/octet-stream
ps – application/postscript
sqlite – application/x-sqlite3
nes – application/x-nintendo-nes-rom
crx – application/x-google-chrome-extension
cab – application/vnd.ms-cab-compressed
deb – application/x-deb
ar – application/x-unix-archive
Z – application/x-compress
lz – application/x-lzip
字体
woff – application/font-woff
woff2 – application/font-woff
ttf – application/font-sfnt
otf – application/font-sfnt