Alex.Morozov
New member
Привет, форумчане. Хочу рассказать про опыт, который за пару месяцев изменил мои рабочие дни сильнее, чем любая новая программа: я сел как-то вечером за Python и написал десять небольших скриптов. Никаких тяжёлых фреймворков и магии, обычные функции на 20–50 строк. Наутро я впервые за долгое время не переименовывал файлы вручную и понял, что нашёл рабочий рецепт, которым стоит поделиться.
Начал я с самого болезненного — папки «Загрузки». Первый скрипт раскладывает файлы по типам, убирает дубликаты по хешу и переименовывает по шаблону дата, проект, версия. Второй разбирает фотографии по датам съёмки из EXIF и складывает по папкам с месяцами. Звучит как мелочь, но у меня освободилось минут двадцать каждый день, а это уже полноценный час в неделю.
Дальше пошли таблицы. Третий скрипт собирает один сводный отчёт из пяти ежемесячных выгрузок, приводит даты к единому формату, считает итоги и сохраняет результат. Четвёртый сам заполняет шаблон и рассылает письма по списку контактов, подставляя имя и цифры отчёта. Раньше это была монотонная копипаста, в которой я стабильно раз в месяц ошибался в одной из ячеек.
Пятый и шестой скрипты закрыли внешние задачи: один раз в день проверяет страницы с ценами и уведомляет меня, если что-то изменилось, второй качает свежие публикации с интересных мне площадок и складывает их в читаемый список. Седьмой следит за сроками задач и раз в сутки присылает короткую сводку о том, что горит. Это те самые вещи, которые я раньше держал в голове и потому забывал.
Восьмой скрипт наводит порядок в счёте за сервер: собирает статистику, считает расходы и показывает, где я плачу за то, чем не пользуюсь. Девятый делает резервные копии важных папок и отправляет архив в облако. Десятый, мой любимый, конвертирует документы в PDF, ставит водяные знаки и жмёт картинки до разумного размера перед отправкой клиентам. Ни один из них не занял у меня больше сорока минут работы.
Отдельно скажу про запуск, потому что именно здесь многие бросают. Я не стал городить сложное расписание внутри кода, а просто поставил систему задач: часть скриптов идёт ночью, часть по триггеру при входе в систему. Все настройки вынес в отдельный файл, ошибки пишу в лог, иначе через неделю не вспомнишь, почему упало. И да, каждый скрипт я делал так, чтобы он запускался одной командой и ничего не спрашивал у меня в процессе.
Что советую вам. Не пытайтесь написать всё сразу и идеально. Возьмите лист бумаги, за неделю выпишите десять повторяющихся действий, которые вас раздражают, и выберите самое частое. Автоматизируйте его сегодня, а следующий — через день. Используйте готовые библиотеки, не изобретайте парсер CSV или работу с датами вручную. И обязательно оставляйте скрипт в состоянии «понятно через полгода», иначе вместо экономии времени получите ещё один проект на поддержку.
Через месяц у меня накопился личный набор инструментов, который работает без моего участия, и я honestly не верю, что раньше жил иначе. Экономия не в минутах, а во внимании: голова освобождается под задачи, где реально нужен человек. А теперь вопрос к вам, форумчане: какой кусок своей рутины вы автоматизировали бы первым, если бы у вас был свободный вечер и желание написать пару десятков строк на Python?
Начал я с самого болезненного — папки «Загрузки». Первый скрипт раскладывает файлы по типам, убирает дубликаты по хешу и переименовывает по шаблону дата, проект, версия. Второй разбирает фотографии по датам съёмки из EXIF и складывает по папкам с месяцами. Звучит как мелочь, но у меня освободилось минут двадцать каждый день, а это уже полноценный час в неделю.
Дальше пошли таблицы. Третий скрипт собирает один сводный отчёт из пяти ежемесячных выгрузок, приводит даты к единому формату, считает итоги и сохраняет результат. Четвёртый сам заполняет шаблон и рассылает письма по списку контактов, подставляя имя и цифры отчёта. Раньше это была монотонная копипаста, в которой я стабильно раз в месяц ошибался в одной из ячеек.
Пятый и шестой скрипты закрыли внешние задачи: один раз в день проверяет страницы с ценами и уведомляет меня, если что-то изменилось, второй качает свежие публикации с интересных мне площадок и складывает их в читаемый список. Седьмой следит за сроками задач и раз в сутки присылает короткую сводку о том, что горит. Это те самые вещи, которые я раньше держал в голове и потому забывал.
Восьмой скрипт наводит порядок в счёте за сервер: собирает статистику, считает расходы и показывает, где я плачу за то, чем не пользуюсь. Девятый делает резервные копии важных папок и отправляет архив в облако. Десятый, мой любимый, конвертирует документы в PDF, ставит водяные знаки и жмёт картинки до разумного размера перед отправкой клиентам. Ни один из них не занял у меня больше сорока минут работы.
Отдельно скажу про запуск, потому что именно здесь многие бросают. Я не стал городить сложное расписание внутри кода, а просто поставил систему задач: часть скриптов идёт ночью, часть по триггеру при входе в систему. Все настройки вынес в отдельный файл, ошибки пишу в лог, иначе через неделю не вспомнишь, почему упало. И да, каждый скрипт я делал так, чтобы он запускался одной командой и ничего не спрашивал у меня в процессе.
Что советую вам. Не пытайтесь написать всё сразу и идеально. Возьмите лист бумаги, за неделю выпишите десять повторяющихся действий, которые вас раздражают, и выберите самое частое. Автоматизируйте его сегодня, а следующий — через день. Используйте готовые библиотеки, не изобретайте парсер CSV или работу с датами вручную. И обязательно оставляйте скрипт в состоянии «понятно через полгода», иначе вместо экономии времени получите ещё один проект на поддержку.
Через месяц у меня накопился личный набор инструментов, который работает без моего участия, и я honestly не верю, что раньше жил иначе. Экономия не в минутах, а во внимании: голова освобождается под задачи, где реально нужен человек. А теперь вопрос к вам, форумчане: какой кусок своей рутины вы автоматизировали бы первым, если бы у вас был свободный вечер и желание написать пару десятков строк на Python?