tianyun 1 年之前
父节点
当前提交
434808bfe0
共有 2 个文件被更改,包括 61 次插入0 次删除
  1. 46 0
      project/changeImageType.py
  2. 15 0
      tmp6.py

+ 46 - 0
project/changeImageType.py

@@ -0,0 +1,46 @@
+import argparse
+import os
+
+from PIL import Image
+
+
+def convert_to_webp(dir_path):
+    common_image_extensions = [".jpg", ".jpeg", ".png", ".webp"]
+    for subdir, dirs, files in os.walk(dir_path):
+
+        for file in files:
+            # 如果文件不是图片,就跳过
+            if not any(file.lower().endswith(ext) for ext in common_image_extensions):
+                continue
+            filepath = subdir + os.sep + file
+            # 如果文件实际类型和文件扩展名不一致,就把文件修改为扩展名的类型,然后重新保存
+            file_extension = os.path.splitext(filepath)[1][1:]
+            file_true_type = Image.open(filepath).format
+            # 打印文件名和文件实际类型
+            print(filepath, file_true_type, file_extension)
+
+            # 全部转小写
+            file_extension = file_extension.lower()
+            # 如果是jpg,就转换为jpeg
+            if file_extension == "jpg":
+                file_extension = "jpeg"
+            file_true_type = file_true_type.lower()
+            if file_extension != file_true_type:
+                # 读取图片,转换为file_extension类型
+                # 打印日志
+                print(f"检测到文件扩展名和文件实际类型不一致,文件扩展名为{file_extension},文件实际类型为{file_true_type}")
+                img = Image.open(filepath)
+                img.save(filepath, file_extension)
+
+
+
+# if __name__ == "__main__":
+    # parser = argparse.ArgumentParser(description='Convert images to webp format.')
+    # parser.add_argument('dir_path', type=str, help='Directory path to scan for images')
+    #
+    # args = parser.parse_args()
+    #
+    # convert_to_webp(args.dir_path)
+
+## python compress_dir_img.py /path/to/directory
+convert_to_webp("/Users/alvin/Desktop/tmp")

+ 15 - 0
tmp6.py

@@ -0,0 +1,15 @@
+import sys
+
+
+def add_numbers(num1, num2):
+    sum = num1 + num2
+    print(sum)
+
+
+if __name__ == "__main__":
+    # 从命令行参数中获取传递的参数
+    num1 = int(sys.argv[1])
+    num2 = int(sys.argv[2])
+
+    # 调用函数进行计算并打印结果
+    add_numbers(num1, num2)