polystores是一个抽象概念,是与云存储交互的客户机集合。

polystores的Python项目详细描述


License: MITBuild StatusPyPI versionCodacy BadgeSlack

多存储

polystores是一个抽象概念,是与云存储交互的客户机集合。

安装

$ pip install -U polystores

注意:默认情况下,此模块不包括云存储的客户端要求 为了保持库的轻量级,用户需要安装与polystores一起使用的适当模块。

安装s3

pip install -U polystores[s3]

安装地面军事系统

pip install -U polystores[gcs]

安装azure存储

pip install -U polystores[azure]

商店

此模块包括客户端和存储抽象,可用于与AWS S3、Azure存储和Google云存储交互

S3号

正常实例化

frompolystores.stores.s3_storeimportS3Stores3_store=S3Store(endpoint_url=...,access_key_id=...,secret_access_key=...,session_token=...,region=...)

使用env vars

exportAWS_ENDPOINT_URL=...
exportAWS_ACCESS_KEY_ID=...
exportAWS_SECRET_ACCESS_KEY=...
exportAWS_SECURITY_TOKEN=...
exprot AWS_REGION=...

然后您可以实例化商店

frompolystores.stores.s3_storeimportS3Stores3_store=S3Store()

使用客户机

frompolystores.stores.s3_storeimportS3Stores3_store=S3Store(client=client)

重要方法

s3_store.list(bucket_name,prefix='',delimiter='',page_size=None,max_items=None,keys=True,prefixes=True)s3_store.list_prefixes(bucket_name,prefix='',delimiter='',page_size=None,max_items=None)s3_store.list_keys(bucket_name,prefix='',delimiter='',page_size=None,max_items=None)s3_store.check_key(key,bucket_name=None)s3_store.get_key(key,bucket_name=None)s3_store.read_key(key,bucket_name=None)s3_store.upload_bytes(bytes_data,key,bucket_name=None,overwrite=False,encrypt=False,acl=None)s3_store.upload_string(string_data,key,bucket_name=None,overwrite=False,encrypt=False,acl=None,encoding='utf-8')s3_store.upload_file(filename,key,bucket_name=None,overwrite=False,encrypt=False,acl=None,use_basename=True)s3_store.download_file(key,local_path,bucket_name=None,use_basename=True)s3_store.upload_dir(dirname,key,bucket_name=None,overwrite=False,encrypt=False,acl=None,use_basename=True)s3_store.download_dir(key,local_path,bucket_name=None,use_basename=True)

地面军事系统

正常实例化

frompolystores.stores.gcs_storeimportGCSStoregcs_store=GCSStore(project_id=...,credentials=...,key_path=...,key_path=...,scopes=...)

使用客户机

frompolystores.stores.gcs_storeimportGCSStoregcs_store=GCSStore(client=client)

重要方法

gcs_store.list(key,bucket_name=None,path=None,delimiter='/',blobs=True,prefixes=True)gcs_store.upload_file(filename,blob,bucket_name=None,use_basename=True)gcs_store.download_file(blob,local_path,bucket_name=None,use_basename=True)gcs_store.upload_dir(dirname,blob,bucket_name=None,use_basename=True)gcs_store.download_dir(blob,local_path,bucket_name=None,use_basename=True)

azure存储

正常实例化

frompolystores.stores.azure_storeimportAzureStoreaz_store=AzureStore(account_name=...,account_key=...,connection_string=...)

使用env vars

exportAZURE_ACCOUNT_NAME=...
exportAZURE_ACCOUNT_KEY=...
exportAZURE_CONNECTION_STRING=...

然后您可以实例化商店

frompolystores.stores.azure_storeimportAzureStoreaz_store=AzureStore()

使用客户机

frompolystores.stores.azure_storeimportAzureStoreaz_store=AzureStore(client=client)

重要方法

az_store.list(key,container_name=None,path=None,delimiter='/',blobs=True,prefixes=True)az_store.upload_file(filename,blob,container_name=None,use_basename=True)az_store.download_file(blob,local_path,container_name=None,use_basename=True)az_store.upload_dir(dirname,blob,container_name=None,use_basename=True)az_store.download_dir(blob,local_path,container_name=None,use_basename=True)

运行测试

pytest

许可证

FOSSA Status

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

推荐PyPI第三方库


热门话题
javascript我的ajax调用延迟的原因是什么?   java Libgdx纹理大小Android   swing Java游戏通用设计Pong   多线程确保所有线程在Java中更新映射中的单个条目   java使用ARM64 musllibs编译OpenJDK 9及以上版本   java制作二进制到十进制转换器   java“您与用户的界面可以通过命令行”   java为什么scanner实例只读取3行代码   列表/映射中的java列表和字符串   java在Activity separate类中的使用,该类在Android Studio上创建带有set-onClickListeners的按钮   jersey 2客户端的java空响应   在java中检查字符串是否只有一个字符与回文不匹配   java如何通过CLI客户端获取jboss用户列表   我们什么时候应该在Java中使用/不使用初始化?   java计算简单三角形的面法线   java代码不在调试模式下执行,要求提供源代码   java更改意图的操作   java Jetty服务器错误