有助于从给定文件中查找结构化元数据。
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链接:
- latest,ubuntu-14.04(docker/Dockerfile)
- ubuntu-16.04(docker/Dockerfile)
- centos-7(docker/Dockerfile)
- show all…
有关此图像及其历史的详细信息,请参见 pywikibotcatfiles/file-metadata(on docker-hub)。 此图像通过推送到^{tt18}来更新$ GitHub repo 或者pywikibot-catfiles/file-metadataGitHub repo(由 通过travis ci api触发构建)。
学分
这个包是从pywikibot-compat派生的。 具体来说,脚本catimages.py可以在 pywikibot-compat/catimages.py。 这些包是由DrTrigon谁创建的 是这个包的原始作者。