Cloudflare Turnstile es una alternativa inteligente al CAPTCHA diseñada para verificar usuarios sin desafíos intrusivos. A diferencia de los CAPTCHA tradicionales que requieren seleccionar imágenes o introducir texto, Turnstile ejecuta desafíos invisibles en el navegador para determinar si el visitante es humano. Es ampliamente adoptado por sitios web que utilizan los servicios de Cloudflare y puede ser un obstáculo significativo para el web scraping y los flujos de trabajo automatizados.
Antes de empezar, asegúrate de tener Python 3.7 o superior instalado. También necesitas una clave API de NextCaptcha — regístrate en NextCaptcha para obtener créditos de prueba gratuitos. Luego instala el SDK de Python de NextCaptcha:
Primero, crea una instancia de NextCaptchaAPI con tu clave API. Puedes encontrar tu clave de cliente en el panel de NextCaptcha:
from nextcaptcha import NextCaptchaAPIapi = NextCaptchaAPI(client_key="YOUR_CLIENT_KEY")
Luego llama al método turnstile con la URL del sitio objetivo y la clave del sitio Turnstile. La clave se encuentra en el atributo data-sitekey del widget Turnstile en la página objetivo:
Si prefieres no usar el SDK, puedes llamar a la API de NextCaptcha directamente con la biblioteca requests. Este enfoque te da control total sobre las solicitudes HTTP:
Este enfoque requiere dos llamadas a la API: createTask para enviar el desafío Turnstile, y getTaskResult para consultar la solución. Se recomienda un intervalo de consulta de 3 segundos para evitar límites de velocidad.
En esta guía, cubrimos dos métodos para eludir Cloudflare Turnstile con Python: el SDK de NextCaptcha para un enfoque sencillo, y la API directa para control total. NextCaptcha resuelve automáticamente el desafío Turnstile y devuelve un token válido. Para más detalles, consulta los enlaces a continuación: