minio服务器图片数据写入到excel并且下载到本地

发布于:2025-07-19 ⋅ 阅读:(18) ⋅ 点赞:(0)

from minio import Minio
import json
import pandas as pd
import os

def write_excel(name,data):
        data=eval(data)
        name+='.xlsx'
        print(data)
        data = pd.DataFrame(data)
        f=os.path.exists(name)
        if f==False:
                data.to_excel(name, sheet_name='sheet1',index=False)
        else:
                num=len(pd.read_excel(name))
                print(num)
                writer = pd.ExcelWriter(name, mode='a',engine='openpyxl',if_sheet_exists='overlay')
                data.to_excel(excel_writer=writer, sheet_name='sheet1',index=False,startrow=num+1,header=False)
                writer.close()

# 设置连接参数
endpoint = '192.168.1.148:9000' # MinIO服务器地址
access_key = 'minioadmin' # Access Key ID
secret_key = 'minioadmin' # Secret Access Key
secure = False # 若为HTTPS则设置为True,否则设置为False
 
# 初始化MinIO客户端
client = Minio(endpoint, access_key=access_key, secret_key=secret_key, secure=secure)

# 指定存储桶名称
bucket_name = 'imagecache'
 
# 列出存储桶中的所有文件
files = client.list_objects(bucket_name, recursive=True)


#存储文件位置
des_path="D:\\example-data\\"


for file in files:
    print('Object Name:', file.object_name)
    print('Size:', file.size)
    print('Last Modified:', file.last_modified)
    url=client.presigned_get_object(bucket_name,file.object_name)
    print(url)
    download_des = client.fget_object(bucket_name=bucket_name, object_name=file.object_name,file_path=des_path+file.object_name)
    all_data=dict()
    all_data['title']=[file.object_name]
    all_data['url']=[url]
    all_data['download_des']=[des_path+file.object_name]
    all_data=json.dumps(all_data)
    write_excel('data',all_data)
 


网站公告

今日签到

点亮在社区的每一天
去签到