Автоматизация веб-процессов с AI в Google Colab: Полное руководство по Playwright и LangChain



Продвинутые решения в области ИИ

Продвинутая реализация кода: Использование ИИ на основе браузера в Google Colab

В этом руководстве мы научимся использовать возможности ИИ-агента на основе браузера в Google Colab. Мы применим движок headless Chromium от Playwright, а также высокоуровневые абстракции Agent и BrowserContext из библиотеки browser_use для программной навигации по веб-сайтам, извлечения данных и автоматизации сложных рабочих процессов.

Настройка окружения

Первым делом обновим списки пакетов системы и установим необходимые компоненты для автоматизации браузера. Это включает в себя headless Chromium, его WebDriver и шрифты Liberation.

    !apt-get update -qq
    !apt-get install -y -qq chromium-browser chromium-chromedriver fonts-liberation
    !pip install -qq playwright python-dotenv langchain-google-generative-ai browser-use
    !playwright install
    

Импорт необходимых библиотек

Импортируем основные библиотеки Python для управления окружением и асинхронного выполнения, а также инструменты для безопасного ввода и хранения API-ключей.

    import os
    import asyncio
    from getpass import getpass
    from pydantic import SecretStr
    from langchain_google_genai import ChatGoogleGenerativeAI
    from browser_use import Agent, Browser, BrowserContextConfig, BrowserConfig
    

Настройка браузера

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

    async def setup_browser(headless: bool = True):
        browser = Browser(config=BrowserConfig(headless=headless))
        context = BrowserContext(
            browser=browser,
            config=BrowserContextConfig(
                wait_for_network_idle_page_load_time=5.0,
                highlight_elements=True,
                save_recording_path="./recordings",
            )
        )
        return browser, context
    

Основной цикл агента

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

    async def agent_loop(llm, browser_context, query, initial_url=None):
        initial_actions = [{"open_tab": {"url": initial_url}}] if initial_url else None
        agent = Agent(
            task=query,
            llm=llm,
            browser_context=browser_context,
            use_vision=True,
            generate_gif=False,
            initial_actions=initial_actions,
        )
        result = await agent.run()
        return result if result else None
    

Запуск основной программы

Запускаем основную программу, которая управляет всей сессией Colab, запрашивает API-ключ и обрабатывает пользовательские запросы.

    async def main():
        raw_key = getpass("Введите ваш GEMINI_API_KEY: ")
        api_key = SecretStr(raw_key)
        model_name = "gemini-2.5-flash-preview-04-17"
        llm = ChatGoogleGenerativeAI(model=model_name, api_key=api_key)
        browser, context = await setup_browser(headless=True)
        
        try:
            while True:
                query = input("\nВведите запрос (или оставьте пустым для выхода): ").strip()
                if not query:
                    break
                url = input("Необязательный URL для открытия (или пустой для пропуска): ").strip() or None
                print("\nЗапуск агента…")
                answer = await agent_loop(llm, context, query, initial_url=url)
                print("\nРезультаты поиска\n" + "-"*40)
                print(answer or "Результаты не найдены")
                print("-"*40)
        finally:
            print("Закрытие браузера…")
            await browser.close()
    

Заключение

Следуя этому руководству, вы получили шаблон Colab, который интегрирует автоматизацию браузера, рассуждения LLM и безопасное управление учетными данными в единую связанную цепочку. Это решение можно использовать для извлечения данных, автоматизации отчетов и других задач.

Автоматизация процессов

Изучите, какие процессы можно автоматизировать и где ИИ может добавить наибольшую ценность в взаимодействии с клиентами. Определите важные KPI для оценки влияния инвестиций в ИИ на бизнес.

Контактная информация

Если вам нужна помощь в управлении ИИ в бизнесе, свяжитесь с нами по адресу hello@itinai.ru. Подписывайтесь на наш Telegram здесь.

AI Solution Example

Новости в сфере искусственного интеллекта