tuoheng_AIPlatform/AI_web_dsj/test/test.py

51 lines
1.5 KiB
Python
Executable File

from minio import Minio
from minio.error import S3Error
import os
# 配置信息
ENDPOINT = "minio-jndsj.t-aaron.com:2443"
ACCESS_KEY = "PJM0c2qlauoXv5TMEHm2"
SECRET_KEY = "Wr69Dm3ZH39M3GCSeyB3eFLynLPuGCKYfphixZuI"
BUCKET_NAME = "algorithm"
FOLDER_PATH = "weights/024/V1.3"
LOCAL_SAVE_DIR = "./downloaded_files" # 本地保存目录
# 创建 MinIO 客户端
client = Minio(
ENDPOINT,
access_key=ACCESS_KEY,
secret_key=SECRET_KEY,
secure=True # 使用 HTTPS
)
def download_folder():
try:
# 确保本地目录存在
os.makedirs(LOCAL_SAVE_DIR, exist_ok=True)
# 列出文件夹中的所有对象
objects = client.list_objects(BUCKET_NAME, prefix=FOLDER_PATH, recursive=True)
for obj in objects:
# 构建本地文件路径
local_path = os.path.join(LOCAL_SAVE_DIR, os.path.relpath(obj.object_name, FOLDER_PATH))
# 确保子目录存在
os.makedirs(os.path.dirname(local_path), exist_ok=True)
# 下载文件
print(f"正在下载: {obj.object_name} -> {local_path}")
client.fget_object(BUCKET_NAME, obj.object_name, local_path)
print("所有文件下载完成!")
except S3Error as e:
print(f"MinIO 错误: {e}")
except Exception as e:
print(f"发生错误: {e}")
if __name__ == "__main__":
download_folder()