El uso de 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 interacciones de usuario. Este capítulo presentará cómo puedes usar fácilmente browser-use para ejecutar tareas de agente en la web con llamadas simples.
Obtener la clave API de Scrapeless
Ve a la pestaña de Configuración del Dashboard:

Luego copia y establece las variables de entorno SCRAPELESS_API_KEY en tu archivo .env.
Las variables de entorno OPENAI_API_KEY en tu archivo .env también son necesarias.
.env
OPENAI_API_KEY=tu-clave-api-openai
SCRAPELESS_API_KEY=tu-clave-api-scrapeless
💡 Recuerda reemplazar la clave API de ejemplo con tu clave API real
Instalar Browser Use
Con pip (Python>=3.11):
Shell
pip install browser-use
Para la funcionalidad de memoria (requiere Python<3.13 debido a la compatibilidad con PyTorch):
Shell
pip install "browser-use[memory]"
Configurar el Navegador y la Configuración del Agente
Así es como configurar el navegador y crear un agente de automatización:
Python
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
tarea = "Ve a Google, busca 'Scrapeless', haz clic en la primera publicación y vuelve al título"
async def configurar_navegador() -> 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)
navegador = Browser(config)
return navegador
async def configurar_agente(navegador: Browser) -> Agent:
llm = ChatOpenAI(
model="gpt-4o", # O elige el modelo que deseas usar
api_key=SecretStr(os.environ.get("OPENAI_API_KEY")),
)
return Agent(
task=tarea,
llm=llm,
browser=navegador,
)
Crear la Función Principal
Aquí está la función principal que reúne todo:
Python
async def main():
load_dotenv()
navegador = await configurar_navegador()
agente = await configurar_agente(navegador)
resultado = await agente.run()
print(resultado)
await navegador.close()
asyncio.run(main())
Ejecuta tu script
Ejecuta tu script:
Shell
python run main.py
Deberías ver tu sesión de Scrapeless comenzar en el Dashboard de Scrapeless.
Código Completo
Python
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
tarea = "Ve a Google, busca 'Scrapeless', haz clic en la primera publicación y vuelve al título"
async def configurar_navegador() -> 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)
navegador = Browser(config)
return navegador
async def configurar_agente(navegador: Browser) -> Agent:
llm = ChatOpenAI(
model="gpt-4o", # O elige el modelo que deseas usar
api_key=SecretStr(os.environ.get("OPENAI_API_KEY")),
)
return Agent(
task=tarea,
llm=llm,
browser=navegador,
)
async def main():
load_dotenv()
navegador = await configurar_navegador()
agente = await configurar_agente(navegador)
resultado = await agente.run()
print(resultado)
await navegador.close()
asyncio.run(main())
💡 Browser Use actualmente solo es compatible con Python.
💡 Puedes copiar la URL en sesión en vivo para ver el progreso de la sesión en tiempo real, y también puedes ver una repetición de la sesión en historial de sesiones.
En Scrapeless, solo accedemos a datos disponibles públicamente y cumplimos estrictamente con las leyes, regulaciones y políticas de privacidad del sitio web aplicables. El contenido de este blog es sólo para fines de demostración y no implica ninguna actividad ilegal o infractora. No ofrecemos garantías y renunciamos a toda responsabilidad por el uso de la información de este blog o enlaces de terceros. Antes de realizar cualquier actividad de scraping, consulte a su asesor legal y revise los términos de servicio del sitio web de destino u obtenga los permisos necesarios.
