Сложность: Уровень сложностиУровень сложностиУровень сложности

Как сделать ИИ-агента для скраппинга любой информации

В чате Нейроцеха часто мелькал запрос — научить нейронку делать скраппинг для сбора информации. Мы решили разобраться в теме и сделали ИИ-агента, который умеет делать скраппинг одного или нескольких сайтов сразу, выписывать карту сайта и даже идти вглубь сайта и находить нужную информацию. А результаты скраппинга записывать в Гугл-таблицу и дублировать результат в телеграм-бота.

Рассказываем, как все настроить.

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

Шаг 1. Подключаем нужные сервисы

Нам понадобятся:

  • OpenAI, Anthropic или OpenRouter;
  • Google Sheets;
  • Telegram;
  • Firecrawl через HTTP-ноду.

Если ранее не подключали к n8n Google-сервисы, сначала изучите наш другой гайд:

Активируем Firecrawl

Чтобы настроить Firecrawl, нужно перейти на официальный сайт и зарегистрироваться. После этого перейдите в раздел Dasboard, в левой части экрана выберите API Keys → Create API Key.

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

Шаг 2. Строим схему бота

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

Файлы для скачивания лежат в этой папке.

Создаем основу

Для этого создайте новый workflow и импортируйте файл AI_agent for scraping.json. Это — основа будущего бота. Здесь нужно проставить данные своих аккаунтов. Для этого кликните дважды на Telegram, Anthropic/OpenAI и Google Sheets и в разделе Credential to connect with выберите подключенные аккаунты на предыдущем шаге.

На скриншотах ниже я выделил элементы, в которых нужно активировать свои аккаунты.

скраппер с ИИ
агент для сбора информации

Но не пугайтесь, настраивается все просто. После настройки всех узлов с Credential нужно подключить аккаунт Firecrawl. Для этого во всех узлах с иконкой планеты заполните строку Value.

настройка узлов в n8n

Там нужно указать свой API-ключ Firecrawl через пробел после слова Bearer. Выглядеть это будет примерно так:

Bearer fc-06a08e56de6e8b438656cb994cf9687c

Затем в узлах HTTP Request1, HTTP Request5, Write Crawl Data to Sheets и Write Sitemap нужно указать ссылку на таблицу, в которую будут записываться результаты скраппинга в разделе URL

связка n8n с таблицей

Для этого нужно указать ID таблицы и листа внутри ссылки:

https://sheets.googleapis.com/v4/spreadsheets/ID ТАБЛИЦЫ/values/НАЗВАНИЕ ЛИСТА!A1:append?valueInputOption=USER_ENTERED&insertDataOption=INSERT_ROWS

Чтобы найти ID Таблицы, откройте таблицу, в которую планируете записывать результаты скраппинга. И скопируйте набор символов между /d/ и /edit.

ID таблицы

Осталось открыть ноды с иконкой Google Sheets и указать название таблицы и листа, куда будет записываться информация.

настройка таблицы в n8n

Когда подключите все аккаунты, сохраните настроенного агента.

Как общаться с агентом

Когда активируете агента, сможете переписываться с ним в тг-боте. Можно выполнять несколько задач:

Скраппинг конкретной страницы (Scrape 1 URL). Агент соберет всю информацию со страницы, выделит самое важное и поместит информацию в таблицу в разные столбцы.

Скраппинг нескольких страниц (Scrape 2 URL). Агент пройдется по ссылкам, которые вы ему дадите, выделит самое важное и поместит информацию в таблицу в разные столбцы.

Скраппинг вглубь (Crawl). Даете боту одну ссылку, а он по ней идет вглубь сайта, находит другие ссылки и скраппит их тоже. Глубину скраппинга можно настроить — для этого откройте узел Crawl и найдите код в разделе JSON. Там в строке Limit укажите свое число — оно определяет, сколько дополнительных ссылок сможет скраппить агент.

настройка лимитов

Делать карту сайта (Sitemap). Даете агенту 1 ссылку, а он собирает все ссылки, связанные с этим сайтом.

Выделять любую нужную информацию с помощью встроенной нейросети в Firecrawl. В этом случае скраппинг будет похож на общение с чат-ботом: вы просите, например, найти ответы на FAQ на сайте — Firecrawl просканирует весь сайт, найдет конкретно блок FAQ и выпишет текст только оттуда.

Чтобы активировать 1 из путей агента, пришлите сообщение с соответствующим запросом. Например, “сделай скраппинг https://www.unisender.com/” или “выпиши частозадаваемые вопросы с https://www.unisender.com/”. Главное — чтобы агент понял вашу задачу и активировал нужный путь.

ответ агента в telergam
итог скраппинга

Сколько стоит содержать такого агента

Конкретную сумму назвать, все сильно зависит от размера ваших системных промптов, используемых нейросетей и количества запросов. Я, например, тестировал все на Claude 3.5 Haiku и один запрос обходился в $0,01–0,05.

А у Firecrawl есть бесплатный тариф, где единоразово даю 500 кредитов. Их хватит на скраппинг 100–500 страниц. Платный тариф стартует от $16 в месяц. Режим Extract нужно оплачивать отдельно, он стоит $99 в месяц, но сейчас большого смысла я в нем не вижу. Можно делать все дешевле обычным скраппингом.

0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии