День 12. Автоматизация без кода: n8n
⏱ Время: 90 минут 🎯 Цель: Соединить инструменты в цепочку — данные текут сами без твоего участия 🛠 Нужно: n8n (self-hosted через Docker или n8n.cloud) · Google Sheets · Gemini API · Telegram
Зачем это тебе
Катя работает контент-менеджером в небольшом магазине на Wildberries. Каждый понедельник её начальник присылает Excel с новыми товарами — обычно 30–80 позиций. Катина задача: написать SEO-описание к каждому. Она открывает ChatGPT, копирует название товара, вставляет промпт, ждёт ответа, копирует текст обратно в таблицу. Потом следующий товар. Потом следующий.
На 80 товаров уходит половина рабочего дня. Это не творческая работа — это ручной труд оператора ЭВМ из 1985 года. Катя нервничает, делает опечатки, пропускает строки. К среде она ненавидит эту таблицу.
После того как Катя прошла День 12, она сделала следующее: открыла n8n, за 40 минут собрала цепочку из трёх кубиков — «читать строку из таблицы», «отправить в Gemini», «записать ответ обратно». Нажала «запустить». Встала, налила чай. Вернулась — 80 описаний готовы. В понедельник она включает workflow, уходит на планёрку, возвращается к готовому результату.
После этого урока у тебя будет точно такая же суперсила: ты сможешь собрать цепочку, которая работает без тебя — пока ты занимаешься чем-то важным, думаешь, общаешься с поставщиками, пьёшь кофе. Данные будут двигаться сами.
Теория
Что такое n8n и зачем он нужен
n8n (произносится «эн-эйт-эн», от «node to node») — это визуальный конструктор автоматизаций. Представь его как схему электрических соединений, только вместо тока между проводами текут данные. Ты мышкой соединяешь блоки — и всё работает.
Главное отличие от других инструментов: n8n открытый (бесплатный исходный код) и может жить на твоём собственном сервере. Никаких ежемесячных платежей за базовый функционал. Мы уже подняли сервер в День 10 — n8n встанет туда одной командой.
Принцип работы: узлы и связи
Любой workflow в n8n состоит из узлов (nodes) и связей между ними.
Узел — это один шаг, одно действие. Например:
- «Прочитать строку из Google Sheets»
- «Отправить запрос в Gemini API»
- «Записать результат обратно в таблицу»
- «Послать сообщение в Telegram»
Связь — это стрелочка между узлами. Она говорит: «когда первый шаг сделан — передай данные следующему».
Аналогия: представь конвейер на заводе. На первой станции рабочий берёт заготовку, на второй — сверлит отверстие, на третьей — красит, на четвёртой — упаковывает. Каждый рабочий не думает о других — просто берёт деталь, делает своё и передаёт дальше. n8n — это такой конвейер для данных. Ты один раз настраиваешь станции и связи, а дальше конвейер работает сам.
Откуда берётся запуск (триггер)
Каждый workflow должен с чего-то начинаться. Это называется триггер (trigger — спусковой крючок). Варианты:
- Вручную — ты нажимаешь кнопку «Запустить». Подходит для разовых задач.
- По расписанию — например, каждый понедельник в 9:00. Workflow запускается сам.
- Webhook — внешняя система присылает сигнал («новый заказ пришёл — начинай»).
- По событию — в Google Sheets появилась новая строка, пришло письмо на email и т.д.
Для нашей задачи сначала будем запускать вручную (чтобы понять механику), потом добавим расписание.
Данные внутри workflow — это просто JSON
Когда данные текут между узлами, они выглядят как структурированный список. Например, Google Sheets передаёт узлу Gemini вот что:
{
"название": "Рюкзак туристический 40л зелёный",
"артикул": "RK-40-GRN"
}
Узел Gemini подставляет название в промпт, получает описание и передаёт дальше:
{
"название": "Рюкзак туристический 40л зелёный",
"артикул": "RK-40-GRN",
"описание": "Вместительный туристический рюкзак объёмом 40 литров..."
}
Google Sheets на выходе берёт поле описание и пишет его в нужную ячейку. Тебе не нужно понимать, как устроен JSON — n8n показывает эти данные наглядно, и ты просто кликаешь на нужное поле.
Gemini API — мозг цепочки
Gemini API — это то же самое, что Gemini в браузере, только без интерфейса. Твой workflow обращается к нему напрямую, передаёт текст промпта, получает ответ. Никакого копирования вручную — это происходит автоматически для каждой строки таблицы.
Для работы нужен API-ключ — он бесплатно выдаётся в Google AI Studio (aistudio.google.com). Это просто длинная строка букв и цифр, которую ты один раз вставляешь в n8n.
Telegram-уведомление — твой личный диспетчер
Добавив в конец цепочки узел Telegram, ты получишь сообщение в телефон, когда вся обработка завершится. Например: «Готово! Обработано 80 товаров. Проверь таблицу.» Ты можешь заниматься своими делами и не смотреть в экран компьютера — бот сам тебя позовёт.
Демо: смотрим как работает
Шаг 1. Запускаем n8n через Docker
Открываем терминал на сервере (или на своём компьютере, если Docker установлен). Вводим одну команду:
docker run -it --rm \
--name n8n \
-p 5678:5678 \
-v ~/.n8n:/home/node/.n8n \
n8nio/n8n
Что это означает: запустить n8n в контейнере, открыть порт 5678, сохранять настройки в папку ~/.n8n. Через 30 секунд в терминале появится сообщение «n8n ready on port 5678».
Открываем браузер: http://localhost:5678. Видим интерфейс n8n. Регистрируемся (email + пароль).
Альтернатива без Docker: идём на n8n.cloud, нажимаем «Start for free» — получаем облачный n8n на 14 дней бесплатно. Интерфейс тот же.
Шаг 2. Первый workflow — проверяем связь с Gemini
Нажимаем «+ New Workflow» (или «Create Workflow»). Видим пустое поле — рабочий стол.
Добавляем первый узел — триггер: Нажимаем «+» → ищем «Manual Trigger» → добавляем. Это кнопка «Запустить вручную».
Добавляем второй узел — HTTP Request (Gemini API): Нажимаем «+» рядом с первым узлом → ищем «HTTP Request» → добавляем.
Настраиваем HTTP Request:
- Method: POST
- URL:
https://generativelanguage.googleapis.com/v1beta/models/gemini-pro:generateContent?key=ВАШ_API_КЛЮЧ - Body (JSON):
{
"contents": [
{
"parts": [
{
"text": "Напиши SEO-описание для маркетплейса Wildberries для товара: Рюкзак туристический 40л зелёный. 2-3 предложения, ключевые слова включи естественно."
}
]
}
]
}
Нажимаем «Test step» — справа появляется ответ от Gemini с текстом описания. Всё работает.
Шаг 3. Второй workflow — Google Sheets → Gemini → Google Sheets
Создаём новый workflow.
Подготавливаем таблицу Google Sheets:
Создаём таблицу с колонками: A — Артикул, B — Название товара, C — SEO-описание (пока пустая). Вносим 5 тестовых товаров в строки 2–6.
Узел 1 — Manual Trigger: добавляем как раньше.
Узел 2 — Google Sheets (читать): Нажимаем «+» → Google Sheets → операция «Get Rows» (получить строки).
- Подключаем Google аккаунт (n8n попросит OAuth — разрешаем доступ к таблицам).
- Указываем ID таблицы (из URL:
docs.google.com/spreadsheets/d/ВОТ_ЭТО_ID/...). - Лист:
Sheet1. Диапазон:A:C.
Нажимаем «Test step» — видим 5 строк с нашими товарами.
Узел 3 — HTTP Request (Gemini): Добавляем как в первом демо, но теперь в тексте промпта используем динамическое поле из предыдущего узла:
Напиши SEO-описание для маркетплейса Wildberries для товара: {{ $json.Название товара }}.
2-3 предложения, ключевые слова включи естественно.
Отвечай только готовым текстом, без вводных фраз.
{{ $json["Название товара"] }} — это способ n8n вставить данные из предыдущего узла. Просто кликаешь на поле, выбираешь нужное — и n8n сам пишет такой код.
Узел 4 — Google Sheets (записать): Google Sheets → операция «Update Row» (обновить строку).
- Та же таблица.
- Колонка C =
{{ $json.candidates[0].content.parts[0].text }}(так выглядит ответ Gemini). - Строку определяем по номеру записи.
Нажимаем «Execute Workflow». Смотрим как загораются узлы слева направо — данные текут. Открываем таблицу — в колонке C появились описания.
Шаг 4. Добавляем Telegram-уведомление
Узел 5 — Telegram: Нажимаем «+» после Google Sheets → Telegram → операция «Send Message».
- Подключаем бота: нужен Bot Token (создаётся через @BotFather в Telegram за 2 минуты).
- Chat ID: твой личный ID (узнаёшь через @userinfobot).
- Текст сообщения:
✅ Готово! Обработано товаров: {{ $runIndex + 1 }}
Открой таблицу и проверь описания.
Запускаем — в телефон приходит уведомление. Workflow полностью готов.
Практика
Задание 1. Запустить n8n
Выбери способ:
- Docker (если есть сервер или Docker Desktop): скопируй команду из демо, запусти, открой
localhost:5678. - n8n.cloud: зарегистрируйся на
n8n.cloud, нажми «Start for free».
Результат: ты видишь пустой рабочий стол n8n в браузере. Сфотографируй экран — это твой первый инструмент автоматизации.
Задание 2. Создать первый workflow: товар → Gemini → Sheets
Создай Google Таблицу с 5 реальными товарами из своего ассортимента (или придумай 5 названий). Собери workflow по шагам из демо:
- Manual Trigger
- Google Sheets — читать строки
- HTTP Request — Gemini API с промптом:
Напиши SEO-описание для маркетплейса для товара: {{ $json["Название"] }}
Объём: 3 предложения. Включи ключевые слова естественно.
Не пиши вводных фраз — сразу текст описания.
- Google Sheets — записать ответ в колонку C.
Задание 3. Запустить на 5 товарах
Нажми «Execute Workflow». Проверь, что в колонке C таблицы появились тексты. Убедись:
- Каждая строка заполнена.
- Текст соответствует названию товара (нет ошибок в привязке строк).
- Тексты разные, а не одинаковые.
Если что-то пошло не так — нажми на красный узел и прочитай сообщение об ошибке. Самые частые: не тот диапазон в Sheets, неверный API-ключ, опечатка в JSON.
Задание 4. Самостоятельно: добавить генерацию 3 вариантов названия
Добавь в workflow новый узел Gemini (HTTP Request) после чтения из Sheets, перед записью. Промпт:
Предложи 3 варианта продающего названия для товара: {{ $json["Название"] }}
Формат: три варианта через точку с запятой. Только варианты, без нумерации.
Запиши результат в колонку D таблицы («Варианты названий»). Запусти на тех же 5 товарах. Теперь у тебя и описание, и варианты названий — всё автоматически.
Самостоятельная работа
Домашнее задание: твоя первая рабочая автоматизация
Возьми реальную повторяющуюся задачу из своей работы. Это может быть:
- Написание описаний для новых товаров
- Генерация ответов на типовые вопросы покупателей
- Составление заголовков и подзаголовков карточек
- Перевод описаний (если работаешь с иностранными поставщиками)
Что сделать:
- Подготовь Google Таблицу с 10 реальными позициями (не тестовыми — настоящими из работы).
- Собери n8n workflow, который обрабатывает эти 10 позиций.
- Добавь Telegram-уведомление по завершению.
- Запусти и зафиксируй результат.
- Замерь время: сколько ушло бы на это вручную vs сколько заняла автоматизация.
Оформи итог в одну строку: «Задача: [что делал]. Вручную: [X минут]. Автоматически: [Y минут]. Сэкономил: [Z минут].»
Это твоя первая настоящая автоматизация. Она будет работать каждый раз, когда ты нажмёшь кнопку — или даже без тебя, если добавить расписание.
Чек-лист урока
- [ ] Понимаю что такое n8n и чем он отличается от ручной работы
- [ ] Запустил n8n (через Docker или n8n.cloud) и вижу рабочий стол
- [ ] Создал workflow: Google Sheets → Gemini API → Google Sheets
- [ ] Добавил Telegram-уведомление в конец цепочки
- [ ] Запустил автоматизацию на 5 тестовых товарах — всё записалось
- [ ] Самостоятельно добавил генерацию 3 вариантов названия
- [ ] Домашнее задание: запустил рабочую автоматизацию на 10 реальных позициях, зафиксировал экономию времени