• 适用于与Amazon S3兼容的云存储的Minio Python Library
    • 最低要求
    • 使用pip安装
    • 使用源码安装
    • 初始化Minio Client
    • 示例-文件上传
      • file-uploader.py
      • Run file-uploader
  • API文档
    • API文档 : 操作存储桶
    • API文档 : 存储桶策略
    • API文档 : 存储桶通知
    • API文档 : 操作文件对象
    • API文档 : 操作对象
    • API文档 : Presigned操作
  • 完整示例
    • 完整示例 : 操作存储桶
    • 完整示例 : 存储桶策略
    • 完整示例 : 存储桶通知
    • 完整示例 : 操作文件对象
    • 完整示例 : 操作对象
    • 完整示例 : Presigned操作
  • 了解更多
  • 贡献

    适用于与Amazon S3兼容的云存储的Minio Python Library

    Minio Python Client SDK提供简单的API来访问任何与Amazon S3兼容的对象存储服务。

    本文我们将学习如何安装Minio client SDK,并运行一个python的示例程序。对于完整的API以及示例,请参考Python Client API Reference。

    本文假设你已经有一个可运行的 Python开发环境。

    最低要求

    • Python 2.7或更高版本

      使用pip安装

    1. pip install minio

    使用源码安装

    1. git clone https://github.com/minio/minio-py
    2. cd minio-py
    3. python setup.py install

    初始化Minio Client

    Minio client需要以下4个参数来连接Minio对象存储服务。

    参数 描述
    endpoint 对象存储服务的URL。
    access_key Access key是唯一标识你的账户的用户ID。
    secret_key Secret key是你账户的密码。
    secure true代表使用HTTPS。
    1. from minio import Minio
    2. from minio.error import ResponseError
    3. minioClient = Minio('play.minio.io:9000',
    4. access_key='Q3AM3UQ867SPQQA43P2F',
    5. secret_key='zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG',
    6. secure=True)

    示例-文件上传

    本示例连接到一个Minio对象存储服务,创建一个存储桶并上传一个文件到存储桶中。

    我们在本示例中使用运行在 https://play.minio.io:9000 上的Minio服务,你可以用这个服务来开发和测试。示例中的访问凭据是公开的。

    file-uploader.py

    1. # 引入Minio包。
    2. from minio import Minio
    3. from minio.error import (ResponseError, BucketAlreadyOwnedByYou,
    4. BucketAlreadyExists)
    5. # 使用endpoint、access key和secret key来初始化minioClient对象。
    6. minioClient = Minio('play.minio.io:9000',
    7. access_key='Q3AM3UQ867SPQQA43P2F',
    8. secret_key='zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG',
    9. secure=True)
    10. # 调用make_bucket来创建一个存储桶。
    11. try:
    12. minioClient.make_bucket("maylogs", location="us-east-1")
    13. except BucketAlreadyOwnedByYou as err:
    14. pass
    15. except BucketAlreadyExists as err:
    16. pass
    17. except ResponseError as err:
    18. raise
    19. else:
    20. try:
    21. minioClient.fput_object('maylogs', 'pumaserver_debug.log', '/tmp/pumaserver_debug.log')
    22. except ResponseError as err:
    23. print(err)

    Run file-uploader

    1. python file_uploader.py
    2. mc ls play/maylogs/
    3. [2016-05-27 16:41:37 PDT] 12MiB pumaserver_debug.log

    API文档

    完整的API文档在这里。

    • 完整API文档

      API文档 : 操作存储桶

    • make_bucket

    • list_buckets
    • bucket_exists
    • remove_bucket
    • list_objects
    • list_objects_v2
    • list_incomplete_uploads

      API文档 : 存储桶策略

    • get_bucket_policy

    • set_bucket_policy

      API文档 : 存储桶通知

    • set_bucket_notification

    • get_bucket_notification
    • remove_all_bucket_notification
    • listen_bucket_notification

      API文档 : 操作文件对象

    • fput_object

    • fget_object

      API文档 : 操作对象

    • get_object

    • put_object
    • stat_object
    • copy_object
    • get_partial_object
    • remove_object
    • remove_objects
    • remove_incomplete_upload

      API文档 : Presigned操作

    • presigned_get_object

    • presigned_put_object
    • presigned_post_policy

      完整示例

    完整示例 : 操作存储桶

    • make_bucket.py
    • list_buckets.py
    • bucket_exists.py
    • list_objects.py
    • remove_bucket.py
    • list_incomplete_uploads.py

      完整示例 : 存储桶策略

    • set_bucket_policy.py

    • get_bucket_policy.py

      完整示例 : 存储桶通知

    • set_bucket_notification.py

    • get_bucket_notification.py
    • remove_all_bucket_notification.py
    • listen_bucket_notification.py

      完整示例 : 操作文件对象

    • fput_object.py

    • fget_object.py

      完整示例 : 操作对象

    • get_object.py

    • put_object.py
    • stat_object.py
    • copy_object.py
    • get_partial_object.py
    • remove_object.py
    • remove_objects.py
    • remove_incomplete_upload.py

      完整示例 : Presigned操作

    • presigned_get_object.py

    • presigned_put_object.py
    • presigned_post_policy.py

      了解更多

    • 完整文档

    • Minio Python SDK API文档

      贡献

    贡献指南

    PYPIBuild StatusBuild status

    原文: https://docs.minio.io/cn/python-client-quickstart-guide.html