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中的zipfile模块使用详解
Jun 25 Python
Python字符串匹配算法KMP实例
Jul 18 Python
整理Python 常用string函数(收藏)
May 30 Python
python如何通过twisted实现数据库异步插入
Mar 20 Python
Python中如何使用if语句处理列表实例代码
Feb 24 Python
PyQt5 多窗口连接实例
Jun 19 Python
用pyqt5 给按钮设置图标和css样式的方法
Jun 24 Python
python中matplotlib条件背景颜色的实现
Sep 02 Python
PyCharm2018 安装及破解方法实现步骤
Sep 09 Python
python基于gevent实现并发下载器代码实例
Nov 01 Python
Python3 读取Word文件方式
Feb 13 Python
如何在Anaconda中打开python自带idle
Sep 21 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
PHP autoload与spl_autoload自动加载机制的深入理解
2013/06/05 PHP
使用PHPCMS搭建wap手机网站
2015/09/20 PHP
PHP培训要多少钱
2017/06/06 PHP
php实现网页端验证码功能
2017/07/11 PHP
C#中TrimStart,TrimEnd,Trim在javascript上的实现
2011/01/17 Javascript
jquery load()在firefox(火狐)下显示不正常的解决方法
2011/04/05 Javascript
JQuery获取或设置ckeditor的数据(示例代码)
2013/11/15 Javascript
JavaScript极简入门教程(一):基础篇
2014/10/25 Javascript
javascript框架设计读书笔记之种子模块
2014/12/02 Javascript
js 获取范围内的随机数实例代码
2016/08/02 Javascript
微信小程序 两种滑动方式(横向滑动,竖向滑动)详细及实例代码
2017/01/13 Javascript
Jquery鼠标放上去显示全名的实现方法
2017/02/06 Javascript
JavaScript标准对象_动力节点Java学院整理
2017/06/27 Javascript
js图片放大镜实例讲解(必看篇)
2017/07/17 Javascript
vue实现商城购物车功能
2017/11/27 Javascript
如何使用VuePress搭建一个类型element ui文档
2019/02/14 Javascript
微信小程序如何连接Java后台
2019/08/08 Javascript
小程序实现横向滑动日历效果
2019/10/21 Javascript
vue+render+jsx实现可编辑动态多级表头table的实例代码
2020/04/01 Javascript
vue实现前端分页完整代码
2020/06/17 Javascript
在Python的gevent框架下执行异步的Solr查询的教程
2015/04/16 Python
深入理解Python中range和xrange的区别
2017/11/26 Python
50行Python代码实现人脸检测功能
2018/01/23 Python
对python使用telnet实现弱密码登录的方法详解
2019/01/26 Python
python Django框架实现web端分页呈现数据
2019/10/31 Python
Python SQLAlchemy入门教程(基本用法)
2019/11/11 Python
Tensorflow tf.dynamic_partition矩阵拆分示例(Python3)
2020/02/07 Python
python删除文件、清空目录的实现方法
2020/09/23 Python
纯CSS和jQuery实现的在页面顶部显示的进度条效果2例(仿手机浏览器进度条效果)
2014/04/16 HTML / CSS
Timberland美国官网:全球领先的户外品牌
2016/08/15 全球购物
英国排名第一的最新设计师品牌手表独立零售商:TIC Watches
2016/09/24 全球购物
Europcar澳大利亚官网:全球汽车租赁领域的领导者
2019/03/24 全球购物
Shell编程面试题
2016/05/29 面试题
工程班组长岗位职责
2013/12/30 职场文书
选对餐饮营销策略,营业额才会上涨
2019/08/27 职场文书
spring 项目实现限流方法示例
2022/07/15 Java/Android