Python怎么实现上传Minio文件
发表于:2025-11-08 作者:千家信息网编辑
千家信息网最后更新 2025年11月08日,本篇内容介绍了"Python怎么实现上传Minio文件"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
千家信息网最后更新 2025年11月08日Python怎么实现上传Minio文件
本篇内容介绍了"Python怎么实现上传Minio文件"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
环境依赖
安装minio以及oss2依赖
pip install minio -i https://pypi.douban.com/simplepip install oss2 -i https://pypi.douban.com/simple
代码
#!/usr/bin/env python# -*- coding: utf-8 -*-# @Time : 2021/12/10 21:35# @Author : 剑客阿良_ALiang# @Site : # @File : upload_tool.py# !/user/bin/env python# coding=utf-8"""@project : dh_train@author : huyi@file : remote_upload_util.py@ide : PyCharm@time : 2021-12-10 14:58:29"""import tracebackfrom minio import Miniofrom minio.error import S3Errorimport oss2 def minio_file_upload(end_point: str, access_key: str, secret_key: str, bucket: str, remote_path: str, local_path: str): try: _end_point = end_point.replace('https://', '').replace('http://', '') # Create a client with the MinIO server playground, its access key # and secret key. client = Minio( _end_point, access_key=access_key, secret_key=secret_key, secure=False ) # Make 'asiatrip' bucket if not exist. found = client.bucket_exists(bucket) if not found: client.make_bucket(bucket) else: print("Bucket {} already exists".format(bucket)) # Upload '/home/user/Photos/asiaphotos.zip' as object name # 'asiaphotos-2015.zip' to bucket 'asiatrip'. client.fput_object( bucket, remote_path, local_path, ) print( "{} is successfully uploaded as " "object {} to bucket {}.".format(local_path, remote_path, bucket) ) except S3Error as e: print( "*** minio上传文件异常 -> {} {}".format(str(e), traceback.format_exc())) raise Exception("minio上传文件异常:[{}]".format(str(e))) def oss_file_upload(end_point: str, access_key: str, secret_key: str, bucket: str, remote_path: str, local_path: str): try: _end_point = end_point.replace('https://', '').replace('http://', '') # 阿里云账号AccessKey拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM用户进行API访问或日常运维,请登录RAM控制台创建RAM用户。 auth = oss2.Auth(access_key, secret_key) # yourEndpoint填写Bucket所在地域对应的Endpoint。以华东1(杭州)为例,Endpoint填写为https://oss-cn-hangzhou.aliyuncs.com。 # 填写Bucket名称。 bucket = oss2.Bucket(auth, _end_point, bucket) # 填写Object完整路径和本地文件的完整路径。Object完整路径中不能包含Bucket名称。 # 如果未指定本地路径,则默认从示例程序所属项目对应本地路径中上传文件。 bucket.put_object_from_file(remote_path, local_path) except S3Error as e: print( "*** oss上传文件异常 -> {} {}".format(str(e), traceback.format_exc())) raise Exception("oss上传文件异常:[{}]".format(str(e)))代码说明:
1、参数分别为endpoint(IP或者域名:端口)、accessKey、secretKey、桶名、远程文件路径、本地文件路径。
补充
Python实现Minio的下载(主要用于异地备份的中转站)
import loggingfrom minio import Miniofrom minio.error import S3Errorlogging.basicConfig( level=logging.INFO, filename='../mysqlbackup_downlaod.log', filemode='a', format='%(asctime)s %(name)s %(levelname)s--%(message)s')file_name = "mysql_monitor.py"file_path = "C:\\Users\\lpy\\Desktop\\img\\{}".format(file_name)def download_file(): # 创建一个客户端 minioClient = Minio( 'minio.***.com', access_key='admin', secret_key='****', secure=False ) try: minioClient.fget_object( bucket_name="backup", object_name="mysql/dev/{}".format(file_name), file_path=file_path ) logging.info("file '{0}' is successfully download".format(file_name)) except S3Error as err: logging.error("download_failed:", err)if __name__ == '__main__': download_file()"Python怎么实现上传Minio文件"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!
文件
路径
代码
内容
名称
更多
用户
知识
实用
学有所成
接下来
中转站
剑客
参数
困境
地域
域名
备份
实际
客户
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
php怎么运行数据库
网络技术服务哪家好
标准网络技术服务系统
数据库查询字段数量百分比
互联网金融科技公司业务
顶岗实习计算机网络技术实习周记
lt男靠软件开发月入万元
组网与网络安全计算题
上海交友软件开发
tcia数据库与TCGA
无限法则无法连接服务器
属于网络安全设计的原则
魔兽世界怀旧服服务器刷怪升级
我的世界服务器优化不卡
陕西医保系统网络安全
美团网络安全负责人
日本服务器 恒创科技
中国网络安全系统
阿里云老用户服务器
深圳学习app软件开发
excel数据库eml
开放网络安全密钥
网络安全读后感五百字
软件开发接口怎么设计
软件开发工程师30之后
数据库关系表根据什么简化
托管云服务器安全
软件开发的利润表
软件开发工程师 职责
家庭网络安全性选哪个