官方文档:http://docs.minio.org.cn/docs/master/python-client-api-reference

    | 操作存储桶 | 操作对象 | Presigned操作 | 存储桶策略/通知 | | make_bucket | get_object | presigned_get_object | get_bucket_policy | | :—- | :—- | :—- | :—- | | list_buckets | put_object | presigned_put_object | set_bucket_policy | | bucket_exists | copy_object | presigned_post_policy | get_bucket_notification | | remove_bucket | stat_object | | set_bucket_notification | | list_objects | remove_object | | remove_all_bucket_notification | | list_objects_v2 | remove_objects | | listen_bucket_notification | | list_incomplete_uploads | remove_incomplete_upload | | | | | fput_object | | | | | fget_object | | | | | get_partial_object | | |

    1. from minio import Minio
    2. from minio.error import ServerError
    3. from datetime import timedelta
    4. MINIO_CONF = {
    5. 'endpoint': '127.0.0.1:9000',
    6. 'access_key': 'AKIAIOSFODNN7EXAMPLE',
    7. 'secret_key': 'wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY',
    8. 'secure': False
    9. }
    10. minioClient = Minio(**MINIO_CONF)
    11. def make_bucket(name: str = 'mayimages'):
    12. # 调用make_bucket来创建一个存储桶。
    13. try:
    14. minioClient.make_bucket(name, location="us-east-1")
    15. except Exception as err:
    16. print('make_bucket err:', err)
    17. def fput_object(name: str = 'mayimages'):
    18. # 上传文件
    19. try:
    20. minioClient.fput_object(name, 'images.jpg', './images.jpg')
    21. except Exception as err:
    22. print('fput_object err:', err)
    23. def list_buckets():
    24. # 桶列表
    25. buckets = minioClient.list_buckets()
    26. for bucket in buckets:
    27. print(bucket.name, bucket.creation_date)
    28. def get_object(name: str = 'mayimages'):
    29. # 获取文件
    30. try:
    31. data = minioClient.get_object(name, 'images.jpg')
    32. print(data.data)
    33. except ServerError as err:
    34. print(err)
    35. def remove_object(name: str = 'mayimages'):
    36. # 删除一个文件
    37. try:
    38. minioClient.remove_object(name, 'images.jpg')
    39. except ServerError as err:
    40. print(err)
    41. def presigned_get_object(name: str = 'mayimages'):
    42. # 生成一个对外个HTTP 下载链接
    43. try:
    44. url = minioClient.presigned_get_object(name, 'images.jpg', expires=timedelta(minutes=1))
    45. print(url)
    46. except ServerError as err:
    47. print(err)