проблема с сортировщиком файлов , не правильно передает путь

при переносе файлов в новые папки , некоторые файлы сжимаются в один файл без расширения. Думаю что проблема тут shutil.move(str(item), os.path.join(path, "images") ,но не понимаю как исправить

from pathlib import Path
import shutil
import sys
import os


def sort_files_and_folders(path):
    path = Path(path)
    for item in path.iterdir():
        if item.is_dir() and item.name in ["images", "documents", "audio", "archive", "video", "other"]:
            continue
        elif item.is_dir():
            sort_files_and_folders(item)
        elif item.is_file():
            if item.suffix.lower() in (".jpg", ".jpeg", ".png", ".gif", ".mp"):
            

                shutil.move(str(item), os.path.join(path, "images")
            elif item.suffix.lower() in (".avi", ".mp4", ".mov", ".mkv"):
                shutil.move(str(item), os.path.join(path, "video"))
            elif item.suffix.lower() in (".doc", ".docx", ".txt", ".pdf", ".xlsx", ".pptx"):
                shutil.move(str(item), os.path.join(path, "documents"))
            elif item.suffix.lower() in (".mp3", ".ogg", ".wav", ".amr"):
                 shutil.move(str(item), os.path.join(path, "audio"))
            elif item.suffix.lower() in (".zip", ".gz", ".tar"):
                archive_name = item.stem
                archive_path = path / "archive" / archive_name
                archive_path.mkdir(parents=True, exist_ok=True)
                shutil.unpack_archive(str(item), str(archive_path))
                shutil.move(str(item), os.path.join(path, "archive"))
            else:
                 shutil.move(str(item), os.path.join(path, "other"))


source_path = Path(sys.argv[1])
create_folders(source_path)
sort_files_and_folders(source_path)

Ответы (0 шт):