
Si te dedicas al web scraping, arbitraje de tráfico o monitoreo SEO, probablemente hayas enfrentado esta situación: tus proxies móviles están configurados a la perfección, las huellas del navegador en Playwright o en un navegador antidetección están enmascaradas y funcionan bien, pero el sitio objetivo sigue denegando el acceso. A menudo, la razón es el reCAPTCHA v3 invisible.

A diferencia de sus predecesores, esta versión no pide buscar semáforos ni descifrar texto distorsionado. Opera en las sombras, analizando factores de comportamiento y devolviendo tu Trust Score al propietario del sitio.
Analicemos cómo funciona realmente el sistema de puntuación de Google, por qué el enfoque clásico con proxies no siempre funciona aquí y cómo usar correctamente la API de 2Captcha para garantizar una puntuación alta.
reCAPTCHA v3 se ejecuta en segundo plano desde el momento en que se carga la página. El script recopila una serie de datos: dirección IP, historial de sesiones del navegador, movimientos del ratón, clics y otros patrones de comportamiento. Con base en esta información, Google devuelve al servidor un Score que va de 0.0 a 1.0.

¿Qué señales exactas recopila Google? El script integrado opera mediante el sistema Advanced Risk Analysis, que evalúa continuamente cientos de parámetros. El algoritmo lee la trayectoria del movimiento del ratón, la velocidad y los patrones de desplazamiento de la página, así como el ritmo de escritura en el teclado. A esto se suman métricas técnicas: la reputación de la dirección IP, la consistencia de la huella del navegador y el tiempo pasado en el sitio antes de la acción objetivo. Si tu script abre instantáneamente una página y hace clic en "Enviar" un milisegundo después, el algoritmo te asigna inmediatamente el estatus de bot.
La escala oficial de puntuación es la siguiente:

¿Cómo reaccionan los sitios a tu Score? Es importante entender: reCAPTCHA en sí no bloquea a nadie, solo proporciona al sitio tu puntuación. La lógica del servidor del recurso objetivo decide qué hacer contigo. Normalmente funciona así: con 0.9, te dejan pasar sin preguntas. Si la puntuación baja a 0.5, el sitio puede desplegar una verificación adicional, como enviar un código SMS o pedir confirmar el email. Y con 0.1, la conexión simplemente se corta o el formulario devuelve un error silencioso. Por lo tanto, para una recopilación de datos exitosa, no siempre es necesario buscar la puntuación máxima: mantener consistentemente una puntuación media es suficiente si tu scraper puede manejar verificaciones intermedias.
El problema de la automatización es que, incluso con una IP móvil limpia, una sesión de script recién creada sin historial de cookies frecuentemente recibe un Score por debajo de 0.3.
Intentar manipular el Score programáticamente es una tarea ingrata y costosa. El servicio de reconocimiento 2Captcha resuelve este problema de forma más sencilla: no engaña a los algoritmos al vuelo, sino que se basa en el perfilado previo de sus trabajadores reales.

Dentro del sistema, a cada trabajador se le da periódicamente un captcha de prueba para medir su Trust Score personal. Estas puntuaciones se registran en la base de datos. Cuando tu script envía una solicitud a la API exigiendo un token con score de 0.9, el sistema de 2Captcha dirige la tarea exclusivamente a los trabajadores cuyo perfil actual de Google mantiene un score de 0.9.
Aquí radica la idea errónea más común entre los desarrolladores de scrapers. Parece lógico: si tu script funciona a través de proxies móviles, deberías pasar exactamente esos proxies a la API de 2Captcha para que el trabajador resuelva el captcha desde la misma dirección IP.
Hecho oficial: 2Captcha no soporta el paso de proxies personalizados para reCAPTCHA V3 y Enterprise V3. La API usa exclusivamente el tipo de tarea RecaptchaV3TaskProxyless.
¿Por qué? La experiencia del servicio muestra que el uso de servidores proxy de terceros al resolver v3 reduce drásticamente la tasa de éxito. El trabajador abre el sitio objetivo desde su dirección IP real y con su historial natural y acumulado de navegación, y eso es exactamente lo que produce un Score alto. El token generado se devuelve a tu script a través de la API. Es crucial entender: la dirección IP del cliente al enviar el formulario final en el sitio no tiene que coincidir con la IP del trabajador que obtuvo el token.
Para solicitar una solución, debes enviar una solicitud POST al método createTask de la API v2. Parámetros clave en el JSON:
RecaptchaV3TaskProxylessdata-sitekey o interceptarla en las solicitudes de red0.3, 0.7 y 0.9action: 'login'). Si existe en el sitio, debe pasarsegoogle.com, pero recaptcha.net se usa en algunas geolocalizacionesUna vez que la API devuelva el token listo (una cadena larga como 03ADUVZwB7...), tu script solo necesita insertarlo en el campo oculto g-recaptcha-response o pasarlo a la función callback del sitio, por ejemplo, window.verifyRecaptcha(token).
Obtener un token de la API con éxito es solo la mitad de la batalla. También necesitas "alimentar" correctamente el sitio con él. Sin embargo, simplemente reemplazar el valor en el campo oculto a menudo no es suficiente.

En la mayoría de los casos, necesitas encontrar el campo oculto con el ID g-recaptcha-response e insertar el token ejecutando JavaScript en el contexto de la página (por ejemplo, usando page.evaluate()). Pero los sitios frecuentemente también requieren invocar una función callback que valida los datos y envía el formulario. Siempre revisa el código fuente del botón de envío para entender exactamente qué script está esperando tu token.
Al escribir scrapers en Python, muchos pasan por alto un detalle crítico: un navegador headless "desnudo" se detecta instantáneamente. Si usas Playwright estándar, los algoritmos de seguridad pueden reconocer la automatización incluso antes de enviar la tarea a la API de 2Captcha. Usa obligatoriamente paquetes de enmascaramiento, como playwright-stealth. Ocultan marcadores de comportamiento automatizado (por ejemplo, eliminan la flag navigator.webdriver), haciendo tu navegador indistinguible del Chrome de un usuario normal. Sin esta preparación, incluso un captcha perfectamente resuelto por un trabajador real podría ser rechazado por un sitio paranoico porque tu propia huella digital inicial del navegador ya estaba comprometida.
Es importante entender: los sitios grandes rara vez están protegidos solo por un captcha. La puntuación de Google frecuentemente se pasa a sistemas WAF (Web Application Firewall) robustos como Akamai o Imperva. Estos agregan todos los datos juntos.
Esto significa que el servidor no simplemente verifica el token de 2Captcha; lo correlaciona con tus huellas de red (como TLS handshakes y parámetros TCP/IP). Si tu scraper tiene una "huella" de red sucia, el WAF rechazará la solicitud antes incluso de verificar el captcha. En este escenario, generar tokens es inútil: la raíz del problema está más profunda, al nivel de la conexión de red.
Además del reCAPTCHA V3 estándar, algunas plataformas usan la versión corporativa avanzada, reCAPTCHA Enterprise. Analiza el fraude de manera mucho más estricta.
Es fácil identificarla: en lugar del api.js estándar, se carga el script enterprise.js en el sitio, y aparecen llamadas grecaptcha.enterprise.execute en el código.
Para resolver este tipo de captcha, se usa el mismo tipo de tarea RecaptchaV3TaskProxyless, pero debe añadirse el parámetro booleano "isEnterprise": true a la solicitud. Ten en cuenta los tiempos: mientras un v3 regular se resuelve por los trabajadores en un promedio de ~5 segundos, la versión Enterprise tarda aproximadamente ~13 segundos. Debes contemplar esto en los timeouts de tus scripts.
No caigas en la tentación de solicitar siempre el minScore: 0.9 máximo si no estás seguro de que el sitio realmente lo necesita. La configuración correcta ahorrará tu presupuesto.
Los precios de 2Captcha para v3 dependen de la puntuación solicitada:
minScore <= 0.3 cuestan $1.45 por 1.000 solucionesminScore > 0.3 (es decir, 0.7 o 0.9) cuestan $2.99 por 1.000 solucionesMejor práctica de la documentación oficial: Durante la fase de pruebas y depuración de tu scraper, siempre comienza con la puntuación mínima aceptable de 0.3. Eleva los requisitos a 0.7 o 0.9 solo si el recurso objetivo comienza a rechazar más del 50% de los tokens enviados.
Muchos están acostumbrados a resolver captchas de imagen simples usando scripts propios o modelos OCR de código abierto. Para v3, este enfoque simplemente no funciona. Tu red neuronal local es físicamente incapaz de generar un token g-recaptcha-response porque está firmado criptográficamente en los servidores cerrados de Google tras evaluar un perfil real. Delegar esta tarea a humanos reales mediante solicitudes Proxyless es el único camino técnicamente viable.
La combinación de IPs móviles de calidad y el manejo correcto de la API de 2Captcha mediante solicitudes Proxyless te permite construir un sistema de recopilación de datos prácticamente invulnerable, inmune a cualquier verificación invisible de Trust Score.