1. Главная
  2. Блог
  3. Разработка и инструменты (DEV & TOOLS)
  4. Как получить неограниченное количество лидов c Google Maps и N8N

Как получить неограниченное количество лидов c Google Maps и N8N

8 октября 2025
131

В современном маркетинге и продажах простое получение списка контактов уже недостаточно. Существует огромное количество информации, но что делать дальше? Как организовать эти данные и, главное, что вы скажете потенциальному клиенту, когда позвоните ему? Как узнать, какие проблемы испытывает их бизнес и что именно вы можете предложить?

Это руководство демонстрирует, как использовать платформу автоматизации N8N в сочетании с ИИ-агентом глубокого исследования, чтобы автоматизировать полный цикл работы с лидами, полученными с Google Maps. Цель — не просто собрать номера телефонов, а получить полный снимок компании, сигналы с ее веб-сайта и социальных сетей, потенциальные возможности для автоматизации роста (Growth Marketing Automation Opportunities), а также оценку совместимости (Compatibility Grade), показывающую, насколько хорошо этот лид подходит вашему предложению.

Благодаря этой автоматизации вы больше не будете звонить "в холодную". Вы будете звонить, зная проблемы компании, её целевой рынок и точный оффер, который ей нужен.

Часть I: Настройка и Скрапинг Google Maps (Автоматизация №1)

Весь процесс делится на две независимые автоматизации: первая занимается скрапингом и хранением сырых лидов, вторая — глубоким исследованием.

1.1 Инструменты и Исходная Настройка

Для реализации этого комплексного рабочего процесса нам понадобятся следующие инструменты:

  1. N8N: Платформа для создания рабочих процессов (Workflow builder), позволяющая соединять различные API и логику.
  2. Appify: Сервис для запуска акторов (Scrapers), в данном случае — для скрапинга Google Maps.
  3. Notion: База данных, используемая для хранения как сырых, так и исследованных лидов.

Для начала работы необходимо настроить стартовый триггер и определить параметры поиска.

1.2 Шаг 1: Настройка Ручного Триггера (Manual Trigger)

Вместо того чтобы вручную менять поисковый запрос и местоположение в скрапере Appify каждый раз, мы настроим Manual Trigger (Ручной триггер) для динамической передачи параметров.

Мы создадим собственный JSON-объект в N8N, который будет содержать необходимые входные данные для последующих узлов (Nodes):

{
  "query": "realtors",
  "location": "Michigan"
}
  • Ключ query (запрос) заменяет name, а location (местоположение) устанавливается для таргетированной области.
  • Важно следить за синтаксисом JSON: ключи и значения должны быть в двойных кавычках, и не должно быть запятой после последнего элемента.

1.3 Шаг 2: Скрапинг Google Maps с Помощью Appify

Для скрапинга мы используем узел HTTP Request (HTTP-запрос) в N8N, который будет обращаться к API Appify.

  1. Метод (Method): Должен быть изменен с GET на POST.
  2. URL: URL-адрес должен быть точным адресом API Appify для запуска актора (скрейпера) и получения результатов (run the actor и get the items).
  3. Тело Запроса (Body): Тип тела запроса должен быть установлен на JSON.

Создание Динамического Тела JSON для Appify:

В тело запроса нужно скопировать стандартный шаблон JSON, который Appify ожидает для запуска скрейпера, и динамически заменить статические параметры searchString (поисковая строка) и location (местоположение) на переменные, приходящие из нашего первого узла (Manual Trigger).

Таким образом, мы передаем Appify не только, что искать (например, "realtors"), но и где искать ("Michigan"), а также определяем количество извлекаемых элементов (например, 10 или 50).

Примечание: Увеличение количества извлекаемых лидов (например, до 50) занимает больше времени. Можно также извлекать дополнительную информацию, такую как обзоры или изображения, но это может повлечь дополнительные расходы.

1.4 Шаг 3: Сохранение Данных в Notion

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

  1. Узел Notion: Используется узел Create a Database Page (Создать страницу базы данных).
  2. Аутентификация: Для подключения Notion необходимо создать новую внутреннюю интеграцию в настройках разработчика Notion, получить секретный ключ и предоставить этому ключу доступ к вашей базе данных.
  3. Маппинг Полей: Самый важный шаг — это маппинг полей. Данные из результатов скрапинга (например, title, categoryName, address, website) динамически связываются с соответствующими колонками в вашей базе данных Notion.

1.5 Дебаггинг: Обработка Пустых Полей

На этом этапе часто возникает распространенная ошибка: Notion не принимает пустые строки (Empty Strings). Если у лида отсутствует веб-сайт или номер телефона, N8N выдаст ошибку.

Решение: Используйте выражения в N8N для обеспечения запасного значения (fallback option). Например, при маппинге поля "Category Name":

  • Если существует categoryName, используйте его.
  • Иначе, введите значение по умолчанию, например, "Uncategorized" (Некатегоризированный).

Этот принцип применяется ко всем потенциально отсутствующим полям, таким как телефонный номер или веб-сайт.

Часть II: Построение Интеллекта — AI-Агент Глубокого Исследования (Автоматизация №2)

Сырые лиды сохранены в Notion. Теперь нам нужна вторая автоматизация, которая будет последовательно брать каждый лид, проводить по нему глубокое исследование с помощью ИИ-агента и возвращать структурированные данные.

2.1 Шаг 4: Триггеры и Управление Потоком

Поскольку мы не можем использовать Ручной триггер дважды, вторая автоматизация начинается с Chat Trigger (Чат-триггер) и сразу же переходит к узлу Notion Trigger.

Узел Notion (Get Many Database Pages): Этот узел вытягивает лиды из базы данных. Ключевой элемент здесь — фильтрация, которая предотвращает дублирование работы.

  1. Создание Статуса: В Notion создается колонка Status (Статус) (например, "Not Started", "In Progress", "Done").
  2. Фильтр N8N: В N8N настраивается фильтр: status должен быть равен "Not Started".

Узел Loop (Цикл): Агент ИИ не должен обрабатывать 10 или 50 компаний одновременно, чтобы избежать перегрузки и ошибок. Узел Loop используется для разделения входящих лидов (например, 10 элементов) и гарантирует, что ИИ-агент будет исследовать их по очереди, индивидуально.

2.2 Шаг 5: Создание AI Agent Node (Ядро Исследования)

Узел AI Agent — это место, где происходит "магия" глубокого исследования. Он действует как когнитивный центр, который рассуждает, выбирает инструменты (Tools) и использует чат-модель.

Проектирование Запроса (Prompt Engineering): Поведение агента определяется его User Message (Пользовательским сообщением), которое, по сути, является подробным промптом, написанным для LLM.

  1. Спецификация Индикаторов: Запрос должен быть адаптирован под нишу. Для маркетингового агентства это могут быть такие индикаторы, как: "как выглядит их веб-сайт?", "анализ их цифрового следа", "наличие Google-отзывов", "запускают ли они рекламу?".

  2. Входные Данные (Inputs): Крайне важно, чтобы User Message включал JSON-объекты входных данных из Notion (название компании, категория, телефон, веб-сайт). Без этих конкретных данных LLM будет просто искать "Home Lending Pro" в интернете и может найти 100 разных компаний.

  3. Задачи (Task Breakdown): Задача агента разбивается на пошаговые инструкции:

    • Company Snapshot (Снимок компании): Обзор, тип бизнеса, целевой рынок.
    • Website and Digital Signals (Веб-сайт и Цифровые Сигналы): Оценка качества веб-сайта, наличие и активность социальных сетей.
    • Growth Marketing Opportunities (Возможности Рост. Маркетинга): Предложения конкретных услуг, которые можно продать.
    • Compatibility Grade (Оценка Совместимости): Выставление оценки (A, B, C) на основе предопределенных критериев (например, "является ли это агентство среднего размера?").
  4. Ограничения (Constraints): Включение Guard Rails (Ограничителей) в промпт необходимо для контроля автономного агента, предотвращения его "бегства" (going rogue) и обеспечения чистого, Notion-готового вывода в формате Markdown.

2.3 Шаг 6: Интеграция Интеллектуальной Модели и Инструментов

AI Agent Node требует подключения к модели, которая будет осуществлять рассуждение, и инструменту, который будет выполнять поиск.

Чат-модель и Память (Chat Model & Memory):

  • Модель: В качестве чат-модели используется OpenAI GPT-4o mini (для экономии токенов и ускорения работы), поскольку задача не является "слишком безумной" или требующей самого мощного GPT-5.
  • Память (Memory): Используется Simple Memory (Простая память). Память критически важна, когда вы строите сложные рабочие процессы, и хотите, чтобы модель "помнила", что она делала ранее, и не дублировала работу.

Инструмент (Tool): Инструмент — это то, что позволяет агенту выполнять реальные действия за пределами рассуждения LLM.

  • Выбор: Выбирается Perplexity (с использованием API ключа, возможно, Sonar Pro). Perplexity считается лучшим инструментом для актуального веб-браузинга и предоставления ссылок (citations).
  • Автономность: Поскольку это AI Agent, он автономен. Мы не вводим промпт напрямую в узел Perplexity. Вместо этого мы позволяем модели самостоятельно определять параметр (let the model define the text/parameter), генерируя промпты для Perplexity на основе своего внутреннего рассуждения.

Дебаггинг: Session Key: Иногда может возникнуть ошибка no session ID. Для тестирования можно использовать тестовый Session ID, найденный в документации N8N, если он не извлекается автоматически из on chat message.

Часть III: Финализация, Вывод и Обратная Связь

После того как AI Agent успешно выполнил глубокое исследование, нам нужно вернуть этот результат в Notion, сделать его читабельным и обновить статус лида.

2.4 Шаг 7: Конвертация Вывода (Code Node)

Вывод AI Agent — это единый текстовый блок, часто содержащий нежелательные символы, такие как \n (двойные переносы строки). Если просто отправить это в Notion, это будет выглядеть "немного грязно" (nasty).

Узел Code (Код): Используется узел Code (с JavaScript или Python) для обработки и форматирования вывода.

  1. Определение Переменной: Переменная text определяется как вывод из узла AI Agent.
  2. Разделение на Чанки: Текст разделяется на части (chunks) по двойным переносам строки (\n\n).
  3. Возврат Элементов: Узел возвращает каждый чанк как отдельный элемент в N8N.

Результат: Один элемент с полным исследованием превращается, например, в 21 отдельный элемент (параграф/чанк), готовый для вставки.

2.5 Шаг 8: Обновление Notion (Append a Block)

Notion имеет ограничение на символы в стандартных полях. Для добавления длинного, многопараграфного исследования (например, 21 чанка) в тело страницы лида используется метод Append a Block (Добавить блок).

  1. Узел Notion (Append a Block): Этот узел добавляет новый блок (параграф) на страницу лида.
  2. URL страницы: URL каждой строки Notion (который был получен на Шаге 3) используется для точного указания, куда добавлять блоки.
  3. Тип Блока: Выбирается тип блока Paragraph.
  4. Маппинг: Каждый отдельный "чанк" (параграф) из узла Code последовательно добавляется как новый блок в Notion.

Конечный Результат: В Notion теперь отображается чистый, форматированный текст исследования. Это включает снимок компании, ее целевой рынок (ключевой рычаг для звонка!), подтверждение отсутствия веб-сайта (если его не было в исходных данных), а также конкретные предложения (Growth Marketing and Automation Opportunities) и крючки для охвата (Outreach Hooks).

2.6 Шаг 9: Завершение Цикла и Масштабирование

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

Узел Notion (Update a Database Page):

  1. URL: Вводится URL базы данных.
  2. Обновление Свойства: Находится свойство Status и устанавливается значение Done.

Замыкание Цикла: Последний узел (Update) подключается обратно к узлу Loop. Это замыкает цикл, гарантируя, что после завершения работы с одним лидом, N8N автоматически переходит к следующему элементу из пакета (batch).

2.7 Операционные Преимущества и Выводы

Эта автоматизация предоставляет стартапам и агентствам колоссальное преимущество:

  • Приоритезация Лидов: Благодаря Compatibility Grade (A, B, C) можно просыпаться и решать, что сегодня вы звоните только лидам с оценкой "А", что максимизирует шансы на успех и эффективность команды.
  • Персонализированные Офферы: Система создает автоматический генератор офферов (Automatic Offer Creator), так как каждый лид получает уникальное предложение, основанное на его реальных проблемах (например, "Я заметил, что у вас нет веб-сайта," или "Я увидел, что ваш LinkedIn неактивен").
  • Масштаб: Для исследования 250 компаний вручную потребовалось бы около 250 часов. С помощью N8N и ИИ-агента это можно сделать за считанные минуты. Автоматизация будет продолжать работать, пока ваш аккаунт OpenAI и Perplexity оплачен.

Комментарии
Name
Email
Phone
Ваше имя
Ваш email
Оставить комментарий