对象存储S3。在s3中存储和检索python对象。。
s3os的Python项目详细描述
S3对象存储
使用s3作为python对象存储的简单pythonic包装器。在
提供简单的对象存储方法;以及用于更复杂用途的Dict类接口。在
示例
基本用法:
from s3os import store_simple, retrieve_simple, delete_simple
my_object = [1, 2, 3]
store_simple("my_key", my_object)
assert retrieve_simple("my_key") == my_object
delete_simple("my_key")
上面的例子在bucket“s3os”中使用了一个全局命名空间,即这个包的所有默认设置。在
您可以指定自己的名称空间(即bucket),如下所示:
^{pr2}$或者像普通的python字典一样简单地使用s3:
from s3os import S3Dict, S3DictConfig, Bucket
my_bucket = Bucket("my_bucket")
s3dict = S3Dict(_config=S3DictConfig(id="my_dict_id", bucket=my_bucket))
# Store information in s3
s3dict["apples"] = 5
s3dict["bananas"] = 2
...
# Later, or in a different python executable, access the same dictionary again:
my_bucket = Bucket("my_bucket")
s3dict = S3Dict(_config=S3DictConfig(id="my_dict_id", bucket=my_bucket))
print(s3dict["apples]) # 5
print(s3dict.get_all_from_s3()) # {"apples": 5, "bananas": 2}
默认情况下,S3Dict
使用内部缓存来加速项目检索。
设置和删除操作总是同步执行的。在
安装
安装软件包:
pip install s3os
设置您的AWS凭据。例如,设置以下环境变量:
AWS_ACCESS_KEY_ID=...
AWS_SECRET_ACCESS_KEY=...
{有关身份验证的更多信息,请参见^ a1。在
Note:
boto.client()
andSession
authentication methods are not currently supported - raise an issue or submit a PR if you want them!
开发安装
安装诗歌-参见https://pypi.org/project/poetry/
应使用以下命令安装依赖项:
poetry install
测试
应使用以下命令运行测试:
poetry run pytest tests
运行某些测试需要有效的AWS身份验证凭据。 请参阅安装说明。在
测试调用S3的次数非常少,因此运行测试的成本可以忽略不计。在
- 项目
标签: