🤖 Агент автоматизации браузера
Мощный инструмент автоматизации браузера, созданный с помощью MCP (Model Controlled Program), который сочетает возможности веб-скрейпинга с интеллектом на основе LLM. Этот агент может выполнять поиск в Google, переходить на веб-страницы и интеллектуально скрейпинговать контент с различных веб-сайтов, включая GitHub, Stack Overflow и сайты документации.
🚀 Особенности
🔍 Интеграция с поиском Google : находит и извлекает лучшие результаты поиска по любому запросу
🕸️ Интеллектуальный веб-скрапинг : индивидуальные стратегии скрапинга для разных типов веб-сайтов:
📂 Репозитории GitHub
💬 Вопросы и ответы Stack Overflow
📚 Страницы документации
🌐 Общие веб-сайты
🧠 Обработка на базе искусственного интеллекта : использует искусственный интеллект Mistral для понимания и обработки собранного контента.
🥷 Скрытый режим : реализует защиту отпечатков пальцев браузера, чтобы избежать обнаружения
💾 Сохранение контента : автоматически сохраняет как скриншоты, так и текстовое содержимое с извлеченных страниц.
Related MCP server: Crawl4AI RAG MCP Server
🏗️ Архитектура
В этом проекте используется клиент-серверная архитектура на базе MCP:
🖥️ Сервер : выполняет задачи автоматизации браузера и веб-скрапинга.
👤 Клиент : предоставляет интерфейс ИИ с использованием Mistral AI и LangGraph
📡 Связь : использует stdio для клиент-серверной связи.
⚙️ Требования
🐍 Питон 3.8+
🎭 Драматург
🧩 MCP (Программа с модельным управлением)
🔑 API-ключ Mistral AI
📥 Установка
Клонируйте репозиторий:
Установить зависимости:
Установить браузеры Playwright:
Создайте файл
.envв корне проекта и добавьте свой ключ API Mistral AI:
📋 Использование
Запуск сервера
Запуск клиента
Образец взаимодействия
После запуска сервера и клиента:
Введите ваш запрос при появлении соответствующего запроса
Агент будет:
🔍 Найдите в Google соответствующие результаты
🧭 Перейти к верхнему результату
📊 Сбор контента на основе типа веб-сайта
📸 Сохраняйте скриншоты и контент в файлы
📤 Возврат обработанной информации
🛠️ Функции инструмента
get_top_google_url
🔍 Выполняет поиск в Google и возвращает URL-адрес лучшего результата по заданному запросу.
browse_and_scrape
🌐 Переходит по URL-адресу и извлекает контент на основе типа веб-сайта.
scrape_github
📂 Специализируется на извлечении содержимого README и блоков кода из репозиториев GitHub.
scrape_stackoverflow
💬 Извлекает вопросы, ответы, комментарии и блоки кода со страниц Stack Overflow.
scrape_documentation
📚 Оптимизирован для извлечения содержимого документации и примеров кода.
scrape_generic
🌐 Извлекает текст абзацев и блоки кода из общих веб-сайтов.
📁 Структура файла
📤 Выходные файлы
Агент генерирует два типа выходных файлов с временными метками:
📸
final_page_YYYYMMDD_HHMMSS.png: Скриншот конечного состояния страницы📄
scraped_content_YYYYMMDD_HHMMSS.txt: Извлеченный текстовый контент со страницы
⚙️ Настройка
Вы можете изменить следующие параметры в коде:
🖥️ Размер окна браузера: отрегулируйте
widthиheightвbrowse_and_scrape👻 Режим Headless: установите
headless=Trueдля невидимой работы браузера.🔢 Количество результатов Google: Измените
num_resultsвget_top_google_url
❓ Устранение неполадок
🔌 Проблемы с подключением : убедитесь, что сервер и клиент работают на разных терминалах.
🎭 Ошибки Playwright : убедитесь, что браузеры установлены с
playwright install🔑 Ошибки API-ключа : проверьте, правильно ли установлен ваш API-ключ Mistral в файле
.env🛣️ Ошибки пути : при необходимости обновите путь к
main.pyвclient.py
📜 Лицензия
Лицензия Массачусетского технологического института
🤝 Вклад
Вклады приветствуются! Пожалуйста, не стесняйтесь отправлять запрос на включение.
Создано с помощью 🧩 MCP, 🎭 Playwright и 🧠 Mistral AI