Skip to main content

Как использовать browser-use для автоматизации работы с веб-страницами

aaeaed19958f98c4043bc15f1588250c

Что Вы узнаете:

  1. Что такое browser-use и как он работает
  2. Какие задачи можно решить с помощью browser-use
  3. Как настроить browser-use для работы
  4. Какие преимущества дает использование browser-use
  5. Для чего подходит browser-use в автоматизации процессов

Библиотека browser-use невероятно стрельнула практически в день релиза, на текущий момент это около 16 тысяч звезд на Гитхабе, и сотни восторженных отзывов на Reddit, в Твиттере, и так далее. Команду, создавшую browser-use даже приняли в YC. У неё революционная точность по сравнению с другими «ИИ агентами использующий браузер» (89% против Runner H с 67%).

Почему browser-use — это прорыв в автоматизации веб-страниц

Автоматизация работы с веб-страницами с помощью browser-use — это настоящий прорыв в области ИИ и нейросетей. Возможность искусственного интеллекта управлять браузером открывает перед пользователями новые горизонты, делая рутинные процессы быстрее и эффективнее.

Идея использования ИИ для автоматизации браузера не нова. К примеру, ранее Anthropic представила Use Computer, а решения для LangChain, использующие Cheerio или Puppeteer, уже умеют анализировать веб-страницы. Однако у подобных решений наблюдалась низкая точность. Browser-use меняет ситуацию благодаря своему уникальному подходу.

В чем отличие browser-use?

Принципиальное отличие browser-use заключается в том, как он идентифицирует интерактивные элементы на веб-странице и передает эту информацию в LLM (большую языковую модель). Это позволяет ИИ принимать решения о том, где кликнуть, куда ввести данные и какие действия выполнить дальше.

Благодаря этому подходу, точность автоматизированных агентов значительно выше. Они не только успешно справляются с задачами, но и находят альтернативные пути решения при возникновении сложностей. Например, если агент не понимает, как найти пользователя на определенном сайте, он может воспользоваться поиском Google для достижения цели.

dfabb6d865f26d07801e8862f4cce0ed

Именно этот подход и позволил им добиться очень высокого уровня точности — агенты не только успешно справляются с задачами, но и зачастую могут находить «обходные пути» для моментов, когда они застряли. К примеру, в этой статье я приведу пример того, как агент не смог понять, как на Хабре найти юзера, и решил просто воспользоваться гуглом (вот бы люди умели так же, да?).

Поехали!

Как установить и настроить browser-use для автоматизации

Установка browser-use в LangChain

Для демонстрации возможностей browser-use мы будем использовать LangChain — популярную open-source платформу для разработки ИИ-агентов. Она позволяет интегрировать OpenAI API, в том числе модель GPT-4o, и использовать browser-use для автоматизации взаимодействий с веб-страницами.

Шаг 1: Установка зависимостей

pip install langchain openai browser-use

Шаг 2: Настройка OpenAI API

Зарегистрируйтесь в OpenAI и получите API-ключ. В коде укажите его следующим образом:

import openai
openai.api_key = "ВАШ_API_КЛЮЧ"

Шаг 3: Использование browser-use

from langchain.agents import initialize_agent
from langchain.tools import BrowserTool

browser = BrowserTool()
agent = initialize_agent(tools=[browser], model_name="gpt-4o")
Теперь ваш агент сможет анализировать веб-страницы, кликать на кнопки и автоматически заполнять формы.

Примеры использования browser-use в автоматизации

1. Поиск информации на веб-сайтах

Browser-use позволяет автоматизировать процесс сбора данных с различных сайтов. Например, можно настроить ИИ для анализа цен на товары в интернет-магазинах или мониторинга новостей.

2. Автоматизация логинов и регистраций

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

3. Взаимодействие с динамическими страницами

Browser-use успешно работает с JavaScript-контентом и динамически загружаемыми элементами. Это делает его идеальным решением для работы с сайтами, использующими AJAX и другие современные технологии.

4. Анализ комментариев и отзывов

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

5. Написание и публикация контента

Browser-use может быть использован для автоматической публикации постов в социальных сетях или блогах, ускоряя работу маркетологов и контент-менеджеров.

6. Проверка конкурентных сайтов

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

Пишем код

Чтож, все зависимости установлены, перейдём к написанию Python-скрипта.

Импортируем необходимые классы, а также прочитаем env-переменные из файла .env:

from langchain_openai import ChatOpenAI
from browser_use import Agent

from dotenv import load_dotenv
load_dotenv()

Для использования асинхронных функций/вызовов в дальнейшем, стоит сразу же подгрузить ещё и `asyncio`:

import asyncio

Объявим main как асинхронную функцию, и создадим экземпляр коннектора нашей LLM (в данном случае — GPT-4o):

async def main:
  llm = ChatOpenAI(model="gpt-4o")

Самое главное — пропишем нашему будущему ИИ-хабраюзеру задачу, которую он должен выполнять. Какую же задачу ему дать? Ответ совершенно очевиден:

task = """Открой Хабр (habr.com), найди какую-нибудь статью от юзера ElKornacio,
открой её полную версию, и предложи вариант токсичного комментария на русском,
связанного с этой статьей, после опубликуй этот комментарий к статье"""

Идеально. Теперь создадим самого агента, и передадим ему эту задачу вместе с указателем на экземпляр LLM-коннектора:

async def main():
    llm = ChatOpenAI(model="gpt-4o")
    task = """Открой Хабр (habr.com), найди какую-нибудь статью от юзера ElKornacio,
    открой её полную версию, и предложи вариант токсичного комментария на русском,
    связанного с этой статьей, после опубликуй этот комментарий к статье"""
    agent = Agent(
        task=task,
        llm=llm,
    )

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

from langchain_openai import ChatOpenAI
from browser_use import Agent
import asyncio
from dotenv import load_dotenv
load_dotenv()

async def main():
    llm = ChatOpenAI(model="gpt-4o")
    task = """Открой Хабр (habr.com), найди какую-нибудь статью от юзера ElKornacio,
    открой её полную версию, и предложи вариант токсичного комментария на русском,
    связанного с этой статьей, после опубликуй этот комментарий к статье"""
    agent = Agent(
        task=task,
        llm=llm,
    )
    result = await agent.run()
    print(result)

asyncio.run(main())

Наслаждаемся результатом

Комментарий получился немного общий, на предыдущих тестах он выдавал куда более точные варианты (сильно связанные с текстом самой статьи). Тем не менее, записи ниже.

В покадровой гифке случился какой-то баг, и из-за скролла нижняя часть экрана съедалась. Я не знаю почему, на видео никаких проблем нет, оно ниже. Сама гифка:

Ну что, хабраюзер, страшно?

Полное видео (ускорено в 4 раза от оригинала):

Заключение

Автоматизация браузерных задач с помощью browser-use открывает огромные возможности для бизнеса, маркетинга и личного использования. Этот инструмент значительно сокращает временные затраты на рутинные операции и улучшает точность выполнения задач.

С развитием искусственного интеллекта мы все чаще будем видеть ИИ-агентов, которые самостоятельно взаимодействуют с веб-страницами. Возможно, вскоре появятся новые методы защиты от таких агентов, например, сложные CAPTCHA. Однако сейчас — самое время освоить возможности browser-use и интегрировать его в свои рабочие процессы.

Ссылка на LangChain

Ссылка на browser use

LLM

Почему iPhone через CarPlay не подключается к автомобилю и как это исправить

Как на iPhone по отдельности настроить громкость сообщений, звонков и мультимедиа

Как защитить веб-версию WhatsApp паролем для дополнительной безопасности

7 простых способов расшифровать видео c YouTube в текстовый формат

Как исправить проблему с кнопкой Camera Control, которая случайно открывает камеру на iPhone 16

Как в iPhone 16 и iPhone 16 Pro включить камеру на 48 Мп для максимального разрешения

60+ суперспособностей вашего iPhone, о которых вы могли не знать

Как использовать современные LLM для написания кода и создания эффективных решений

Простое руководство по работе с нейросетью на примерах

5 полезных образовательных сервисов на основе нейросетей