python使用magic模块进行文件类型识别方法


Posted in Python onDecember 08, 2018

代码实例

python-magic是libmagic文件类型识别库的python接口。 libmagic通过根据预定义的文件类型列表检查它们的头文件来识别文件类型。 这个功能通过Unix命令文件暴露给命令行。

>>> import magic
>>> magic.from_file("testdata/test.pdf")
'PDF document, version 1.2'
>>> magic.from_buffer(open("testdata/test.pdf").read(1024))
'PDF document, version 1.2'
>>> magic.from_file("testdata/test.pdf", mime=True)
'application/pdf'

还有一个Magic类提供更直接的控制,包括覆盖魔术数据库文件并开启字符编码检测。 这不建议用于一般用途。 特别是,跨多个线程共享并不安全,如果尝试这样做会失败。

>>> f = magic.Magic(uncompress=True)
>>> f.from_file('testdata/test.gz')
'ASCII text (gzip compressed data, was "test", last modified: Sat Jun 28
21:32:52 2008, from Unix)'

还可以结合标志选项:

>>> f = magic.Magic(mime=True, uncompress=True)
>>> f.from_file('testdata/test.gz')
'text/plain'

以上这篇python使用magic模块进行文件类型识别方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python采集腾讯新闻实例
Jul 10 Python
介绍Python中内置的itertools模块
Apr 29 Python
python 时间戳与格式化时间的转化实现代码
Mar 23 Python
Python数组遍历的简单实现方法小结
Apr 27 Python
python实现拓扑排序的基本教程
Mar 11 Python
NumPy 基本切片和索引的具体使用方法
Apr 24 Python
Python读取stdin方法实例
May 24 Python
梅尔倒谱系数(MFCC)实现
Jun 19 Python
Python算法中的时间复杂度问题
Nov 19 Python
Python自动发送和收取邮件的方法
Aug 12 Python
详解Pycharm与anaconda安装配置指南
Aug 25 Python
python try...finally...的实现方法
Nov 25 Python
将pandas.dataframe的数据写入到文件中的方法
Dec 07 #Python
python用pandas数据加载、存储与文件格式的实例
Dec 07 #Python
Python判断一个文件夹内哪些文件是图片的实例
Dec 07 #Python
用python脚本24小时刷浏览器的访问量方法
Dec 07 #Python
浅谈python下含中文字符串正则表达式的编码问题
Dec 07 #Python
python 实现调用子文件下的模块方法
Dec 07 #Python
使用Python开发SQLite代理服务器的方法
Dec 07 #Python
You might like
自制短波长线天线频率预选器 - 成功消除B2K之流的镜像
2021/03/02 无线电
wamp下修改mysql访问密码的解决方法
2013/05/07 PHP
解析PHP实现下载文件的两种方法
2013/07/05 PHP
php去除字符串换行符示例分享
2014/02/13 PHP
php程序总是提示验证码输入有误解决方案
2015/01/07 PHP
JS创建优美的页面滑动块效果 - Glider.js
2007/09/27 Javascript
JavaScript 基础问答三
2008/12/03 Javascript
浅谈Node.js中的定时器
2015/06/18 Javascript
纯JavaScript实现的分页插件实例
2015/07/14 Javascript
JS 终止执行的实现方法
2016/11/24 Javascript
URL中“#” “?” &“”号的作用浅析
2017/02/04 Javascript
Angular HMR(热模块替换)功能实现方法
2018/04/04 Javascript
Vue 理解之白话 getter/setter详解
2019/04/16 Javascript
关于layui 弹出层一闪而过就消失的解决方法
2019/09/09 Javascript
解决ant-design-vue中menu菜单无法默认展开的问题
2020/10/31 Javascript
Python中的对象,方法,类,实例,函数用法分析
2015/01/15 Python
python生成器generator用法实例分析
2015/06/04 Python
用Python一键搭建Http服务器的方法
2018/06/01 Python
Python退火算法在高次方程的应用
2018/07/26 Python
Python实现两个list求交集,并集,差集的方法示例
2018/08/02 Python
使用Flask-Cache缓存实现给Flask提速的方法详解
2019/06/11 Python
python程序变成软件的实操方法
2019/06/24 Python
阿里云ECS服务器部署django的方法
2019/08/29 Python
python使用Geany编辑器配置方法
2020/02/21 Python
英国领先的酒类网上商城:TheDrinkShop
2017/03/16 全球购物
意大利买卖二手奢侈品网站:LAMPOO
2020/06/03 全球购物
了解AppleShare protocol(AppleShare协议)吗
2015/08/28 面试题
linux面试题参考答案(8)
2015/08/11 面试题
初中班主任寄语
2014/04/04 职场文书
大学生应聘导游自荐信
2014/06/02 职场文书
民主生活会批评与自我批评总结
2014/10/17 职场文书
党员干部廉洁自律承诺书
2015/04/28 职场文书
社区党员干部承诺书
2015/05/04 职场文书
高考百日冲刺决心书
2015/09/23 职场文书
2016教师校本培训心得体会
2016/01/08 职场文书
Java 写一个简单的图书管理系统
2022/04/26 Java/Android