34 lines
924 B
Python
34 lines
924 B
Python
|
|
#!/usr/bin/env python
|
|||
|
|
# -*- coding: UTF-8 -*-
|
|||
|
|
"""
|
|||
|
|
@Project :trinity_client
|
|||
|
|
@File :upload_image.py
|
|||
|
|
@Author :周成融
|
|||
|
|
@Date :2023/8/28 13:49:20
|
|||
|
|
@detail :
|
|||
|
|
"""
|
|||
|
|
import io
|
|||
|
|
import logging
|
|||
|
|
from minio import Minio
|
|||
|
|
|
|||
|
|
from app.core.config import *
|
|||
|
|
|
|||
|
|
minio_client = Minio(
|
|||
|
|
f"{MINIO_IP}:{MINIO_PORT}",
|
|||
|
|
access_key=MINIO_ACCESS,
|
|||
|
|
secret_key=MINIO_SECRET,
|
|||
|
|
secure=MINIO_SECURE)
|
|||
|
|
|
|||
|
|
|
|||
|
|
def upload_png_sd(image, user_id, category, object_name):
|
|||
|
|
try:
|
|||
|
|
image_data = io.BytesIO()
|
|||
|
|
image.save(image_data, format='PNG')
|
|||
|
|
image_data.seek(0)
|
|||
|
|
image_bytes = image_data.read()
|
|||
|
|
image_url = f"aida-users/{minio_client.put_object(f'aida-users', f'{user_id}/{category}/{object_name}', io.BytesIO(image_bytes), len(image_bytes), content_type='image/png').object_name}"
|
|||
|
|
|
|||
|
|
return image_url
|
|||
|
|
except Exception as e:
|
|||
|
|
logging.warning(f"upload_png_mask runtime exception : {e}")
|