以表格格式解析和操作结构化数据和元数据。

metapack的Python项目详细描述


https://travis-ci.org/Metatab/metapack.svg?branch=master

metapack,metatab数据打包

以表格格式解析和操作结构化数据和元数据。

Metatab是一种允许结构化 元数据(通常存储在json、yaml或xml中的类型)将被存储 并以csv或excel等表格形式进行编辑。metatab文件看起来与 你会预料到的,所以它们对非技术用户来说很容易阅读和编辑, 使用他们已经有的工具。metatab是一种很好的创建格式, 存储和传输元数据。有关metatab的更多信息,请访问 http://metatab.org

metapack是一个使用metatab创建zip、excel和 文件系统数据包。

这个存储库有一个python模块和可执行文件。对于javascript版本, 请参阅metatab-js存储库。

安装

Metapack只适用于Python3.5或更高版本,您几乎肯定会希望 安装到虚拟环境中。要设置虚拟环境:

python3 -mvenv metapack
cd metapack
source bin/activate

既然我们还在开发中,您可以通过安装 来自github的包,但也可以从pip安装。不管怎样,你 应该创建virtualenv,然后,必须重新安装6个 由于奇数冲突而打包

使用pip安装软件包:

pip install metapack

因为fs包对6有一个奇怪的版本要求,所以您必须 修复版本:

pip uninstall -y six
pip install six==1.10.0

要运行测试,还需要安装一些支持模块;

$ pip install fiona shapely pyproj terminaltables geopandas

然后使用带有metatab程序的远程文件从 metatab模块:

$ metatab -j https://raw.githubusercontent.com/CivicKnowledge/metatab-py/master/test-data/example1.csv

运行metatab -h以获取其他程序选项。

test-data目录中有一些测试文件,这些文件还用作 分析。您可以克隆repo并从文件中解析它们,或者从 github页面中的文件,单击raw按钮以获取 flie,然后复制url。

metapack的主程序是mt,它有许多(可扩展的)子程序 命令。请使用mt -h查看命令。

开始

有关初始教程,请参见Getting Started,或docs directory on Github中的其他指南

开发说明

清除缓存

如果测试要查找的文件是 缓存。可以使用一个evironmental变量设置缓存,并在 解决此问题的测试

$ cache_dir=/tmp/some/dir
$ rm -rf $cache_dir
$ mkdir -p  $cache_dir
$ APPURL_CACHE=$cache_dir python setup.py test

使用Docker进行开发测试

在开发其他版本的python时进行测试有点麻烦, 因为您必须安装备用版本,tox将运行 测试,不仅仅是你想要的。

解决这个问题的一个方法是在本地安装Docker,然后运行Docker 源目录上的测试容器。这是从 在appurl/tests中生成文件

$ cd metapack/metapack/test
$ make build # to create the container image
$ make shell # to run bash the container

现在有一个docker容器,/code目录是appurl源 董事。由于Docker容器正在从主机运行代码,因此可以 正常编辑。

现在,运行tox来构建tox虚拟环境,然后输入 要为其运行测试并激活虚拟环境的版本。

运行一个环境。例如,python 3.4

# tox -e py34

在一个环境环境中运行一个测试。例如,python 3.4

# tox -e py34 -- -s

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

推荐PyPI第三方库


热门话题
java如何在JUnit5中定义优先级   Web驱动程序将焦点切换到iframe的java困难   java JFileChooser没有文件名文本字段选项   本地化是否可以回退到Java中resourcebundle的宏语言(例如,nynorsk>norsk)   禁用时Java断言的性能拖动   未考虑执行中的java jsonschema2pojo maven插件配置   java微调器。setSelection未调用setOnItemSelectedListener函数   序列化XStream:序列化java的反序列化。sql。时间导致错误   java无法理解为什么“ajpnio8009execXX”线程在AbstractQueuedSynchronizer$ConditionObject上阻塞/等待时间。等候   Java date给我的格式是mm/dd/yyyy,其中jquery datepicker的日期格式是dd/mm/yyyy   jsf如何用javaweb应用程序在客户端重写csv文件   雅加达ee Java邮件Api,无法从outlook客户端读取“.msg附件”   java PreparedStatement性能调优