BrowserIntegracionesBrowser Use

Uso del navegador

Browser Use es un SDK de automatización de navegadores que utiliza capturas de pantalla para capturar el estado del navegador y acciones para simular las interacciones del usuario. Este capítulo introducirá cómo puede usar fácilmente browser-use para ejecutar tareas de agente en la Web con llamadas simples.

Obtener la clave de API de Scrapeless

Revise la pestaña Configuración del Panel:

Luego copie y configure las variables de entorno SCRAPELESS_API_KEY en su archivo .env.

Las variables de entorno OPENAI_API_KEY en su archivo .env también son necesarias.

OPENAI_API_KEY=your-openai-api-key
SCRAPELESS_API_KEY=your-scrapeless-api-key

💡Recuerde reemplazar la clave de API de ejemplo con su clave de API real.

Instalar Browser Use

Con pip (Python>=3.11):

pip install browser-use

Para la funcionalidad de memoria (requiere Python<3.13 debido a la compatibilidad con PyTorch):

pip install "browser-use[memory]"

Configurar el navegador y la configuración del agente

Aquí se muestra cómo configurar el navegador y crear un agente de automatización:

from dotenv import load_dotenv
import os
import asyncio
from urllib.parse import urlencode
from langchain_openai import ChatOpenAI
from browser_use import Agent, Browser, BrowserConfig
from pydantic import SecretStr
 
task = "Go to Google, search for 'Scrapeless', click on the first post and return to the title"
 
async def setup_browser() -> Browser:
    scrapeless_base_url = "wss://browser.scrapeless.com/browser"
    query_params = {
        "token": os.environ.get("SCRAPELESS_API_KEY"),
        "session_ttl": 180,
        "proxy_country": "ANY"
    }
    browser_ws_endpoint = f"{scrapeless_base_url}?{urlencode(query_params)}"
    config = BrowserConfig(cdp_url=browser_ws_endpoint)
    browser = Browser(config)
    return browser
 
async def setup_agent(browser: Browser) -> Agent:
    llm = ChatOpenAI(
        model="gpt-4o", # Or choose the model you want to use
        api_key=SecretStr(os.environ.get("OPENAI_API_KEY")),
    )
 
    return Agent(
        task=task,
        llm=llm,
        browser=browser,
    )

Crear la función principal

Aquí está la función principal que lo reúne todo:

async def main():
    load_dotenv()
    browser = await setup_browser()
    agent = await setup_agent(browser)
    result = await agent.run()
    print(result)
    await browser.close()
 
asyncio.run(main())

Ejecutar su script

Ejecute su script:

python run main.py

Debería ver que su sesión de Scrapeless comienza en el Panel de Scrapeless.

Código completo

from dotenv import load_dotenv
import os
import asyncio
from urllib.parse import urlencode
from langchain_openai import ChatOpenAI
from browser_use import Agent, Browser, BrowserConfig
from pydantic import SecretStr
 
task = "Go to Google, search for 'Scrapeless', click on the first post and return to the title"
 
async def setup_browser() -> Browser:
    scrapeless_base_url = "wss://browser.scrapeless.com/browser"
    query_params = {
        "token": os.environ.get("SCRAPELESS_API_KEY"),
        "session_ttl": 180,
        "proxy_country": "ANY"
    }
    browser_ws_endpoint = f"{scrapeless_base_url}?{urlencode(query_params)}"
    config = BrowserConfig(cdp_url=browser_ws_endpoint)
    browser = Browser(config)
    return browser
 
async def setup_agent(browser: Browser) -> Agent:
    llm = ChatOpenAI(
        model="gpt-4o", # Or choose the model you want to use
        api_key=SecretStr(os.environ.get("OPENAI_API_KEY")),
    )
 
    return Agent(
        task=task,
        llm=llm,
        browser=browser,
    )
 
async def main():
    load_dotenv()
    browser = await setup_browser()
    agent = await setup_agent(browser)
    result = await agent.run()
    print(result)
    await browser.close()
 
asyncio.run(main())

💡Browser Use actualmente solo admite Python.

💡Puede copiar la URL en la sesión en vivo para ver el progreso de la sesión en tiempo real, y también puede ver una repetición de la sesión en el historial de sesiones.