有助于从给定文件中查找结构化元数据。

file-metadata的Python项目详细描述


简介

file-metadata是一个python包,用于分析文件和查找 可以从中使用的元数据。

安装

在安装文件元数据之前,需要 安装。对于ubuntu,这些可以安装在:

$ sudo apt-get install perl openjdk-7-jre python-dev pkg-config \
> libfreetype6-dev libpng12-dev liblapack-dev libblas-dev gfortran \
> cmake libboost-python-dev libzbar-dev

接下来,使用pip安装库。安装最新的马厩 版本,使用:

$ pip install file-metadata

要从github repo的主分支获取开发构建,请使用:

$ pip install --pre file-metadata

用法

要使用包,首先需要一个可以是任何媒体文件的文件。

让我们首先从commons wikimedia下载一个示例qrcode:

$ wget https://upload.wikimedia.org/wikipedia/commons/5/5b/Qrcode_wikipedia.jpg -O qrcode.jpg

现在,让我们在此创建一个文件对象:

>>> from file_metadata.generic_file import GenericFile
>>> qr = GenericFile.create('qrcode.jpg')

注意,在创建文件时,类会自动找到最好的 要分析文件的类的类型。在这种情况下,它会自动检测到 文件是一个图像文件,使用ImageFile类:

>>> qr.__class__.__name__
'ImageFile'

现在,要查找文件支持的可能分析例程,help(qr) 可以检查。所有以analyze_开头的例程都执行分析。 例如qrcode,让我们使用analyze_barcode_zxing()

>>> qr.analyze_barcode_zxing()
{'zxing:Barcodes': [{'data': 'http://www.wikipedia.com',
   'format': 'QR_CODE',
   'points': [(50.0, 316.0), (50.0, 52.0), (314.0, 52.0), (278.0, 280.0)],
   'raw_data': 'http://www.wikipedia.com'}]}

它告诉我们条形码(points)的边界框以及数据 (http://www.wikipedia.com)。它还提到条形码的格式 是二维码。

类似地,要检查mimetype,分析路由analyze_mimetype() 可以使用:

>>> qr.analyze_mimetype()
{'File:MIMEType': 'image/jpeg'}

要对图像执行所有分析例程,请 analyze()方法可以使用。它在 归档并返回合并结果:

>>> qr.analyze()

开发

测试

要测试代码,请使用以下命令安装依赖项:

$ pip install -r test-requirements.txt

然后执行:

$ python -m pytest

Docker

要拉latestdocker映像,请使用:

$ docker pull pywikibotcatfiles/file-metadata
支持的标记和相应的Dockerfile链接:

有关此图像及其历史的详细信息,请参见 pywikibotcatfiles/file-metadataon docker-hub)。 此图像通过推送到^{tt18}来更新$ GitHub repo 或者pywikibot-catfiles/file-metadataGitHub repo(由 通过travis ci api触发构建)。

构建状态

https://travis-ci.org/pywikibot-catfiles/file-metadata.svg?branch=masterhttps://codecov.io/gh/pywikibot-catfiles/file-metadata/branch/master/graph/badge.svghttps://travis-ci.org/pywikibot-catfiles/docker-file-metadata.svg?branch=master

学分

这个包是从pywikibot-compat派生的。 具体来说,脚本catimages.py可以在 pywikibot-compat/catimages.py。 这些包是由DrTrigon谁创建的 是这个包的原始作者。

许可证

https://img.shields.io/github/license/pywikibot-catfiles/file-metadata.svg

此代码属于 MIT License。 请注意,有些文件或内容可能会从其他地方复制 有自己的执照。用于生成 数据库也有自己的许可证。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
如何下载多个。java中的PDF文件   linux Java打开文件,形成实际用户主页~/   java如何在时间线内维护TableView选择?   java Hibernate注释@Where vs@WhereJoinTable   Java读/写访问异常FileNotFoundException(访问被拒绝)   继承在Java中是否可以扩展最后一个类?   Android HttpClient使用java使应用程序崩溃。lang.OutOfMemoryError:pthread_create   java为什么即使我在proguardproject中添加了jar文件,也会出现这种错误。txt?   如果添加JButton,swing Java FocusListener和KeyListener将无法工作   java使用solrj检索json格式的SolrDocument   使用Microsoft Visual Studio代码进行Java编程   java NoClassDefFoundError:org/apache/log4j/Logger   哈希集中包含相等对象的java   java中的参数化构造函数是否需要有一个主体?   java类似于NetBeans不必要的代码检测器   Java实践问题   java Blackberry“[projectname].调试文件丢失”和“I/O错误:找不到程序”jar