Найти в Дзене
Python Lab

Python‑уборщик: скрипт, который сам раскладывает файлы по папкам

Папка “Загрузки” — это тайная свалка любого разработчика. Скриншоты, архивы, документы, установщики, случайные картинки — всё падает в одно место и живёт там годами. Сначала кажется, что “потом разберу”, но в итоге мы тратим время не на работу, а на поиск нужного файла в этом хаосе. Решение здесь предельно логичное: один раз написать скрипт, который будет убираться вместо нас. В этой статье разберём простой Python‑скрипт, который автоматически сортирует файлы по типам. Он не привязан к какой‑то конкретной ОС и подходит даже тем, кто только начинает знакомство с Python. Всё, что нужно — установить интерпретатор, указать путь к папке и настроить пару правил. Что именно должен делать скрипт Задача максимально практичная: пройти по указанной папке (чаще всего это “Загрузки” или “Рабочий стол”); определить тип каждого файла по расширению; создать подпапки вроде Images, Docs, Archives, Video, Audio, Apps, Other; аккуратно разложить файлы по своим “коробкам”. Если запускать такую уборку хо
Оглавление

Папка “Загрузки” — это тайная свалка любого разработчика. Скриншоты, архивы, документы, установщики, случайные картинки — всё падает в одно место и живёт там годами. Сначала кажется, что “потом разберу”, но в итоге мы тратим время не на работу, а на поиск нужного файла в этом хаосе. Решение здесь предельно логичное: один раз написать скрипт, который будет убираться вместо нас.

В этой статье разберём простой Python‑скрипт, который автоматически сортирует файлы по типам. Он не привязан к какой‑то конкретной ОС и подходит даже тем, кто только начинает знакомство с Python. Всё, что нужно — установить интерпретатор, указать путь к папке и настроить пару правил.

Что именно должен делать скрипт

Задача максимально практичная:

  • пройти по указанной папке (чаще всего это “Загрузки” или “Рабочий стол”);
  • определить тип каждого файла по расширению;
  • создать подпапки вроде Images, Docs, Archives, Video, Audio, Apps, Other;
  • аккуратно разложить файлы по своим “коробкам”.

Если запускать такую уборку хотя бы раз в день или раз в неделю, папка перестаёт превращаться в помойку. А главное — перестаёт тянуть внимание и нервы каждый раз, когда нужно что‑то найти.

Логика работы скрипта шаг за шагом

Чтобы скрипт был понятным и легко расширяемым, стоит разбить его на несколько логических частей.

  1. Словарь расширений.
    В начале задаём, какие расширения к каким категориям относятся. Например, ('.jpg', '.png', '.gif') → "Images", ('.docx', '.pdf') → "Docs", ('.zip', '.rar') → "Archives" и так далее.
  2. Проход по папке.
    Скрипт перебирает все элементы каталога. Если встречает подпапку — можно либо пропускать, либо обрабатывать отдельно. Если найден файл — берём его расширение и ищем подходящую категорию.
  3. Создание подпапок.
    Если папка для категории ещё не существует, скрипт создаёт её автоматически. Никаких предварительных ручных действий не требуется.
  4. Перемещение файлов.
    Файл переносится из исходной папки в нужную категорию. В простейшем варианте просто переносим. В более продвинутом можно обрабатывать случаи конфликтов имён (например, добавлять суффикс к имени файла).

Такой подход делает код читаемым и даёт возможность в любой момент добавить новые категории или изменить правила сортировки под себя.

Пример структуры скрипта

Ниже не привожу полный код, чтобы не перегружать статью, но обозначу каркас, который легко собрать:

  • блок с настройками: путь к папке, словарь расширений → категорий;
  • функция, которая по расширению возвращает название папки категории;
  • функция, создающая папку, если её ещё нет;
  • основная функция, которая проходит по файлам и перемещает их в нужные каталоги;
  • опционально: логирование действий в текстовый файл (какой файл куда перенесён).

Такой каркас можно оформить в один файл file_sorter.py и запускать вручную или через планировщик задач.

Как запускать скрипт на Windows и Linux

Чтобы скрипт приносил пользу, важно сделать запуск максимально простым:

  • Windows.
    Можно создать рядом .bat‑файл, который запускает Python с нужным скриптом. Тогда вся уборка сводится к двойному клику по ярлыку на рабочем столе. Ещё вариант — добавить задачу в планировщик, чтобы сортировка запускалась, например, каждый вечер.
  • Linux/macOS.
    Здесь удобно использовать cron. Настраиваем периодичность (раз в сутки, раз в час или по будням вечером) и указываем путь к Python‑скрипту. Дальше система уже сама будет помнить о чистке.

Плюс такого подхода в том, что однажды настроенный скрипт живёт своей жизнью и не требует от тебя лишних действий.

Куда развивать идею дальше

Базовый сортировщик — это только начало. Очень быстро появляются дополнительные хотелки:

  • вести лог всех перемещений, чтобы при желании можно было найти “потерянный” файл;
  • добавлять в категории фильтры по размеру (например, большие видео или архивы отправлять в отдельное хранилище);
  • делать разные наборы правил для работы и для личных файлов;
  • выносить настройки в отдельный конфигурационный файл, чтобы не трогать сам Python‑код.