跳转到主要内容

用于在Python中处理Table Schema的实用库

项目描述

dataflows-aws

Travis Coveralls

Dataflows的处理器与AWS协同工作

特性

  • dump_to_s3 处理器
  • change_acl_on_s3 处理器

内容

入门指南

安装

该软件包使用语义版本。这意味着主要版本可能包含破坏性更改。建议在您的setup/requirements文件中指定package版本范围,例如package>=1.0,<2.0

$ pip install dataflows-aws

示例

这些处理器必须作为数据流的一部分使用。例如

flow = Flow(
    load('data/data.csv'),
    dump_to_s3(
        bucket=bucket,
        acl='private',
        path='my/datapackage',
        endpoint_url=os.environ['S3_ENDPOINT_URL'],
    ),
)
flow.process()

文档

dump_to_s3

将DataPackage保存到AWS S3。

参数

  • bucket - 数据包存储的桶名称(应该已经创建!)
  • acl - 提供上传文件的ACL。默认为'public-read'(更多信息请参见 boto3 文档)。
  • path - 数据包的路径(key/前缀)。可能包含适用于 datapackage.json 的格式化字符串,例如:my/example/path/{owner}/{name}/{version}
  • content_type - 在S3中存储文件时使用的内容类型。默认为text/plain(S3的常规默认值是binary/octet-stream,但我们更喜欢text/plain)。
  • endpoint_url - 允许使用兼容S3的服务的API端点(例如,'https://ams3.digitaloceanspaces.com')

change_acl_on_s3

更改给定Bucket中具有给定路径(即前缀)的对象的ACL。

参数

  • bucket - 存储对象的桶名称
  • acl - 可用选项 'private'|'public-read'|'public-read-write'|'authenticated-read'|'aws-exec-read'|'bucket-owner-read'|'bucket-owner-full-control'
  • path - 数据包的路径(key/前缀)。
  • endpoint_url - 允许使用兼容S3的服务的API端点(例如,'https://ams3.digitaloceanspaces.com')

贡献

该项目遵循 Open Knowledge International 编码标准

开始项目的推荐方法是创建并激活项目虚拟环境。要将包和开发依赖项安装到您的活动环境中

$ make install

运行带有linting和覆盖率的测试

$ make test

对于linting,使用pylama(在pylama.ini中配置)。在此阶段,它已经安装到您的环境中,并且可以单独使用,以更精细的控制方式,如文档中所述 - https://pylama.readthedocs.io/en/latest/

例如,按错误类型排序结果

$ pylama --sort <path>

对于测试,使用tox(在tox.ini中配置)。它已经安装到您的环境中,并且可以单独使用,以更精细的控制方式,如文档中所述 - https://testrun.org/tox/latest/

例如,以增加的详细程度检查Python 2环境下的测试子集。所有位置参数和位于--之后的选项都将传递给py.test

tox -e py37 -- -v tests/<path>

在底层,tox使用pytest(在pytest.ini中配置),coveragemock包。这些包仅在tox环境中可用。

变更日志

这里仅描述了破坏性和最重要的更改。有关所有发布版本的完整更改日志和文档,可以在格式良好的 提交历史 中找到。

v0.x

  • 初始处理器实现

项目详情


下载文件

下载适用于您的平台的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。

源分发

dataflows-aws-0.2.4.tar.gz (8.7 kB 查看哈希)

上传时间

构建分发

dataflows_aws-0.2.4-py2.py3-none-any.whl (7.1 kB 查看哈希)

上传时间 Python 2 Python 3