大文件夹集中伪造乱码

import os
import uuid
from pathlib import Path

# 定义一个函数来生成唯一的文件名
def generate_unique_filename(extension):
    return f"{uuid.uuid4()}{extension}"

# 定义支持的图片文件扩展名
supported_extensions = ['.jpg', '.jpeg', '.png', '.gif']

def rename_images_in_directory(directory):
    # 存储已生成的文件名以确保唯一性
    generated_filenames = set()

    # 遍历目录
    for root, dirs, files in os.walk(directory):
        for file in files:
            file_path = Path(root) / file
            extension = file_path.suffix.lower()
            if extension in supported_extensions:
                # 生成唯一文件名并保持扩展名不变
                new_filename = generate_unique_filename(extension)
                while new_filename in generated_filenames:
                    new_filename = generate_unique_filename(extension)
                generated_filenames.add(new_filename)

                # 生成新的文件路径
                new_file_path = file_path.with_name(new_filename)
                # 重命名文件
                os.rename(file_path, new_file_path)
                print(f"Renamed '{file_path}' to '{new_file_path}'")

# 用户输入总目录
directory = input("请输入总目录的路径: ")
rename_images_in_directory(directory)

 

posted @ 2024-02-04 20:20  不上火星不改名  阅读(8)  评论(0)    收藏  举报