minio python sdk使用
如下
from minio import Minio
from minio.error import S3Error
import logging
logging.basicConfig(filename='logs/myProgramLog.log', level=logging.INFO,
format=' %(asctime)s - %(levelname)s- %(message)s')
class Bucket:
def __init__(self, goods):
# minio的地址,账户,密码
self.url = "192.168.18.176:9000"
self.access = "admin"
self.secret = "123456"
# 桶名称
self.bucketName = "asiatrip"
# 当前被操作的文件
self.goods = goods
# 连接 minio
self.client = Minio(self.url, self.access, self.secret, secure=False)
# 不存在则创建桶.
def createBucket(self):
found = self.client.bucket_exists(self.bucketName)
if not found:
self.client.make_bucket(self.bucketName)
logging.info(f'创建桶:{self.bucketName}')
else:
logging.info(f'桶已存在:{self.bucketName}')
# 上传文件 桶名称 ,上传后的文件名, 当前传输的文件
def uploadFlie(self):
self.client.fput_object(
self.bucketName, self.goods, self.goods,
)
logging.info(f"{self.goods} 上传至 {self.bucketName} ")
# 下载文件 桶名称 , 要下载的文件名称, 下载后的文件名称
def downloadFile(self):
self.client.fget_object(
self.bucketName, self.goods, self.goods,
)
print("successfully")
# 删除桶内的文件 桶名称 ,文件名称
def deleteFlie(self):
self.client.remove_object(self.bucketName, self.goods )
# 主入口
def main(self):
# 创建桶
self.createBucket()
# 上传文件
self.uploadFlie()
# 下载文件
self.downloadFile()
# 删除文件
self.deleteFlie()
if __name__ == "__main__":
try:
Bucket("2.txt").main()
except S3Error as exc:
print("error occurred.", exc)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具