Surn commited on
Commit
9d91797
·
1 Parent(s): da0a17c

fix some broken file types

Browse files
Files changed (2) hide show
  1. utils/file_utils.py +33 -1
  2. utils/image_utils.py +4 -5
utils/file_utils.py CHANGED
@@ -1,10 +1,42 @@
1
  # file_utils
2
  import os
3
  import utils.constants as constants
 
 
4
 
5
  def cleanup_temp_files():
6
  for file_path in constants.temp_files:
7
  try:
8
  os.remove(file_path)
9
  except Exception as e:
10
- print(f"Failed to delete temp file {file_path}: {e}")
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  # file_utils
2
  import os
3
  import utils.constants as constants
4
+ import shutil
5
+ from pathlib import Path
6
 
7
  def cleanup_temp_files():
8
  for file_path in constants.temp_files:
9
  try:
10
  os.remove(file_path)
11
  except Exception as e:
12
+ print(f"Failed to delete temp file {file_path}: {e}")
13
+
14
+ def rename_file_to_lowercase_extension(image_path: str) -> str:
15
+ """
16
+ Renames only the file extension to lowercase by copying it to the temporary folder.
17
+
18
+ Parameters:
19
+ image_path (str): The original file path.
20
+
21
+ Returns:
22
+ str: The new file path in the temporary folder with the lowercase extension.
23
+
24
+ Raises:
25
+ Exception: If there is an error copying the file.
26
+ """
27
+ path = Path(image_path)
28
+ new_suffix = path.suffix.lower()
29
+ new_path = path.with_suffix(new_suffix)
30
+
31
+ # Make a copy in the temporary folder with the lowercase extension
32
+ if path.suffix != new_suffix:
33
+ try:
34
+ shutil.copy(path, new_path)
35
+ constants.temp_files.append(str(new_path))
36
+ return str(new_path)
37
+ except FileExistsError:
38
+ raise Exception(f"Cannot copy {path} to {new_path}: target file already exists.")
39
+ except Exception as e:
40
+ raise Exception(f"Error copying file: {e}")
41
+ else:
42
+ return str(path)
utils/image_utils.py CHANGED
@@ -15,6 +15,8 @@ from utils.color_utils import (
15
  detect_color_format,
16
  update_color_opacity
17
  )
 
 
18
  def get_image_from_dict(image_path):
19
  if isinstance(image_path, dict) :
20
  if 'image' in image_path:
@@ -44,11 +46,8 @@ def open_image(image_path):
44
  """
45
  if isinstance(image_path, Image.Image):
46
  return image_path
47
- else:
48
- path = Path(image_path)
49
- new_suffix = path.suffix.lower()
50
- new_path = path.with_suffix(new_suffix)
51
- image_path = str(new_path)
52
 
53
  import requests
54
  try:
 
15
  detect_color_format,
16
  update_color_opacity
17
  )
18
+ from utils.file_utils import rename_file_to_lowercase_extension
19
+
20
  def get_image_from_dict(image_path):
21
  if isinstance(image_path, dict) :
22
  if 'image' in image_path:
 
46
  """
47
  if isinstance(image_path, Image.Image):
48
  return image_path
49
+ else:
50
+ image_path = rename_file_to_lowercase_extension(image_path)
 
 
 
51
 
52
  import requests
53
  try: