import json from pathlib import Path def generate_folder_structure(root_path): result = {} # Поддерживаемые форматы изображений image_ext = {".jpg", ".jpeg", ".png", ".gif", ".bmp", ".webp", ".tiff"} # Основные категории (cat и dog) for category in ["cat", "dog"]: category_path = Path(root_path) / category if not category_path.is_dir(): continue category_dict = {} # Обрабатываем подпапки внутри категории for subfolder in category_path.iterdir(): if subfolder.is_dir(): # Собираем изображения images = [ file.name for file in subfolder.iterdir() if file.is_file() and file.suffix.lower() in image_ext ] category_dict[subfolder.name] = sorted(images) result[category] = category_dict return result def save_to_json(data, output_file): with open(output_file, "w", encoding="utf-8") as f: json.dump(data, f, ensure_ascii=False, indent=2) if __name__ == "__main__": # Настройки ASSETS_DIR = "server/static/assets" OUTPUT_JSON = "structure.json" # Генерация структуры structure = generate_folder_structure(ASSETS_DIR) # Сохранение в файл save_to_json(structure, OUTPUT_JSON) print(f"JSON структура сохранена в файл: {OUTPUT_JSON}")