# Resolución dinámica de CAPTCHA

De forma predeterminada, Headless Browser detecta y resuelve automáticamente los CAPTCHAs inmediatamente cuando se carga una página. Sin embargo, algunos sitios web muestran CAPTCHAs en etapas posteriores, como ventanas emergentes al enviar formularios o después de interacciones específicas del usuario.

Headless Browser te permite activar la detección y resolución de CAPTCHA manualmente en cualquier momento durante tu sesión. Para activar manualmente la resolución de CAPTCHA, ejecuta el siguiente código para enviar un mensaje al objeto window:

```
window.postMessage({action: 'solve_captcha', type: '<captcha type>'}, '*')
```

Los tipos de CAPTCHA compatibles incluyen:

* `hcaptcha`
* `recaptcha`
* `turnstile` (CAPTCHA de Cloudflare)

Ejemplo de uso (Playwright / Puppeteer JavaScript):

```
// ...
await page.click('#form-submit');
// Ahora sabemos que se debe mostrar el CAPTCHA
await page.evaluate(() => {
  window.postMessage({action: 'solve_captcha', type: 'recaptcha'}, '*')
});
// Sigue los eventos `oxylabs-captcha-start` y `oxylabs-captcha-end` como en un caso normal
// ...
```

`Turnstile` CAPTCHA requiere un enfoque diferente, ya que debe interceptarse antes de que aparezca en la pantalla. Para hacerlo, inicia primero la detección de CAPTCHA y luego realiza la acción que lo desencadena:

```
// Sabemos que nuestra siguiente acción puede desencadenar CAPTCHA de Turnstile
await page.evaluate(() => {
  window.postMessage({action: 'solve_captcha', type: 'turnstile'}, '*')
});
await page.click('#form-submit');
// Sigue los eventos `oxylabs-captcha-start` y `oxylabs-captcha-end` como en un caso normal
// ...
```


---

# Agent Instructions: 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:

```
GET https://developers.oxylabs.io/products/es/headless-browser/features/dynamic-captcha-solving.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
