> For the complete documentation index, see [llms.txt](https://developers.oxylabs.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developers.oxylabs.io/products/es/ai-studio/browser-agent.md).

# Browser Agent

## Descripción general

[**Browser Agent**](https://aistudio.oxylabs.io/apps/browser_agent) es una herramienta de automatización del navegador con IA de [**Oxylabs AI Studio**](https://aistudio.oxylabs.io/). Simula la navegación de usuarios reales ejecutando acciones de varios pasos como hacer clic en enlaces, rellenar formularios, desplazarse, capturar capturas de pantalla y luego extraer datos estructurados – todo controlado mediante instrucciones en lenguaje natural.

A diferencia de los marcos de automatización tradicionales (p. ej., Puppeteer o Selenium), Browser Agent no requiere reglas de scraping estáticas ni scripts manuales. Puedes describir tareas en inglés sencillo o proporcionar una secuencia de pasos, y la IA las ejecutará igual que lo haría una persona.

Puedes previsualizar la herramienta [**aquí**](https://aistudio.oxylabs.io/apps/browser_agent) e integrarla en tus flujos de trabajo mediante nuestros SDK de Python/JavaScript, el servidor MCP o una de nuestras integraciones de terceros.

## Características clave

* **Control total mediante IA del navegador** – ejecutar clics, introducir datos, navegar y desplazarse.
* **Ejecución de tareas de varios pasos** – define flujos de navegación en lenguaje natural.
* **Varias salidas** – obtén resultados en JSON, Markdown, HTML o capturas de pantalla PNG.
* **Compatibilidad con contenido dinámico** – interactúa con páginas renderizadas con JavaScript.
* **Extracción basada en esquemas** – solicita JSON estructurado cuando se complete la secuencia de navegación.

## Cómo funciona

Para ejecutar tareas con el agente de IA del navegador, sigue estos pasos:

1. **Ingresa la URL de destino.**
2. **Describe el proceso de navegación como:**
   * **Instrucción en lenguaje natural** (p. ej., “Abre la página de precios, acepta cookies y extrae todos los nombres de productos con sus precios.)
   * **Lista estructurada de pasos** – proporciona un array de acciones del navegador de IA (`hacer clic`, `escribir`, `navegar`, `esperar`, `extraer`).
3. **Selecciona el formato de salida:** JSON, Markdown, HTML o captura de pantalla PNG.
4. **(Opcional) Si se selecciona JSON**, define o genera automáticamente un esquema para estructurar los datos recopilados.

### Instalación

Para empezar, asegúrate de tener acceso a una clave de API (o consigue una [prueba gratuita](https://aistudio.oxylabs.io/register) con 1000 créditos) y `Python ver. 3.10` o superior instalado. Puedes instalar el `oxylabs-ai-studio` paquete usando pip:

```sh
pip install oxylabs-ai-studio
```

### Ejemplos de código (Python)

Los siguientes ejemplos muestran cómo usar el agente de IA del navegador para realizar navegación y extracción de datos.

```python
from oxylabs_ai_studio.apps.browser_agent import BrowserAgent

browser_agent = BrowserAgent(api_key="<API_KEY>")

schema = browser_agent.generate_schema(
    prompt="game name, platform, review stars and price"
)
print("schema: ", schema)

prompt = "Find if there is game 'super mario odyssey' in the store. If there is, find the price. Use search bar to find the game."
url = "https://sandbox.oxylabs.io/"
result = browser_agent.run(
    url=url,
    user_prompt=prompt,
    output_format="json",
    schema=schema,
)
print(result.data)
```

El siguiente ejemplo obtiene una captura de pantalla PNG mientras se usa Browser Agent.

```python
import base64
from oxylabs_ai_studio.apps.browser_agent import BrowserAgent

browser_agent = BrowserAgent(api_key="<API_KEY>")

result = browser_agent.run(
    url = "https://sandbox.oxylabs.io/",
    user_prompt= "Go to the website and take a screenshot of the home page",
    output_format="screenshot",
)

with open("screenshot.png", "wb") as f:
    f.write(base64.b64decode(result.data.content["data"]))
```

Obtén más información sobre Browser Agent y el SDK de Python de Oxylabs AI Studio en nuestro [repositorio de PyPI](https://pypi.org/project/oxylabs-ai-studio/).\
También puedes consultar nuestro [SDK de JavaScript de AI Studio](https://github.com/oxylabs/oxylabs-ai-studio-js?tab=readme-ov-file#oxylabs-ai-studio-javascript-sdk) guía para usuarios de JS.

### Parámetros de solicitud

| Parámetro                                                  | Descripción                                                           | Valor predeterminado |
| ---------------------------------------------------------- | --------------------------------------------------------------------- | -------------------- |
| <mark style="background-color:green;">`URL`</mark>         | URL de inicio para navegar                                            | –                    |
| <mark style="background-color:green;">`user_prompt`</mark> | Instrucción en lenguaje natural para la extracción                    | –                    |
| `output_format`                                            | Formato de salida (`JSON`, `Markdown`, `html`, `captura de pantalla`) | `Markdown`           |
| `esquema`                                                  | Esquema OpenAPI para extracción estructurada (obligatorio para JSON)  | –                    |
| `geo_location`                                             | Ubicación del proxy en formato ISO2                                   | –                    |

– parámetros obligatorios

### Ejemplos de salida

Browser Agent puede devolver resultados analizados o capturas de pantalla que son fáciles de integrar en tus aplicaciones. Esto es lo que parece nuestra salida JSON:

```json
{
  "type": "json",
  "content": {
    "games": [
      {
        "game_name": "Super Mario Odyssey",
        "platform": "Nintendo Switch",
        "review_stars": null,
        "price": 89.99
      }
    ]
  }
}
```

Aquí está la salida en captura de pantalla de nuestra segunda solicitud:

<figure><img src="https://github.com/oxylabs/browser-agent-py/raw/main/screenshot.png" alt=""><figcaption></figcaption></figure>

Browser Agent admite múltiples formatos de salida (`"output": "YOUR_FORMAT"`):

* `JSON` – datos estructurados mediante análisis basado en esquemas.
* `Markdown` – datos fáciles de leer, perfectos para flujos de trabajo de IA y automatización.
* `html` – datos HTML sin procesar de la página web.
* `captura de pantalla` – imagen PNG del contenido del navegador.

## Casos de uso prácticos

Puedes usar Browser Agent con IA de varias maneras, incluyendo:

1. **Simulación de pago en comercio electrónico** – añade artículos al carrito, aplica un cupón y confirma el flujo de pago.
2. **Automatización de búsquedas de viajes** – introduce destinos, aplica filtros y extrae precios de vuelos u hoteles.
3. **Extracción de datos de búsqueda de empleo** – busca un puesto, haz clic en las ofertas y extrae los detalles del trabajo.
4. **Descubrimiento de eventos y entradas** – navega por sitios de eventos y recupera títulos, fechas y precios.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://developers.oxylabs.io/products/es/ai-studio/browser-agent.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
