0
0
mirror of https://github.com/hydralauncher/hydra.git synced 2024-11-13 14:09:24 +00:00
hydra/torrent-client/profile_image_processor.py
2024-10-18 16:02:57 +00:00

31 lines
902 B
Python

from PIL import Image
import os, uuid, tempfile
class ProfileImageProcessor:
@staticmethod
def get_parsed_image_data(image_path):
Image.MAX_IMAGE_PIXELS = 933120000
image = Image.open(image_path)
try:
image.seek(1)
except EOFError:
mime_type = image.get_format_mimetype()
return image_path, mime_type
else:
newUUID = str(uuid.uuid4())
new_image_path = os.path.join(tempfile.gettempdir(), newUUID) + ".webp"
image.save(new_image_path)
new_image = Image.open(new_image_path)
mime_type = new_image.get_format_mimetype()
return new_image_path, mime_type
@staticmethod
def process_image(image_path):
return ProfileImageProcessor.get_parsed_image_data(image_path)