CAPSOLVER
Blog
Cómo resolver los captchas de Cloudflare Turnstile con Selenium

Cómo resolver los captchas de Cloudflare Turnstile con Selenium

Logo of CapSolver

Aloísio Vítor

Image Processing Expert

11-Oct-2024

¿Tu web scraper está luchando contra el bloqueo de Cloudflare a tus solicitudes?

Las captchas Turnstile de Cloudflare están diseñadas para identificar e impedir el tráfico automatizado, creando obstáculos importantes para el web scraping y la automatización. Sin embargo, al utilizar un navegador sin cabeza como Selenium, puedes superar estos obstáculos de manera efectiva. Dicho esto, las configuraciones estándar de Selenium aún pueden activar las sofisticadas defensas antibot de Cloudflare.

En este blog, analizaremos varias técnicas efectivas para superar las captchas Turnstile de Cloudflare utilizando Selenium.

Comprender las captchas Turnstile de Cloudflare

Las captchas Turnstile de Cloudflare son desafíos avanzados destinados a distinguir entre usuarios humanos y bots automatizados. A diferencia de las captchas tradicionales, Turnstile utiliza diversas evaluaciones basadas en el comportamiento y la interacción, como el análisis de los movimientos del ratón, los patrones de clics y otras métricas de interacción, para determinar la legitimidad del usuario.

¿Por qué elegir Selenium?

Selenium es una herramienta robusta para automatizar navegadores web, lo que te permite simular acciones del usuario como clics, envíos de formularios y navegación. Sin embargo, debido a su naturaleza automatizada, las configuraciones convencionales de Selenium aún pueden ser señaladas por los sistemas de seguridad de Cloudflare. Para gestionar eficazmente las captchas Turnstile, la integración de Selenium con herramientas y técnicas adicionales puede mejorar significativamente el éxito de tu web scraping.

Técnicas efectivas para resolver las captchas Turnstile de Cloudflare con Selenium

1. Implementar CapSolver

Uno de los métodos más eficientes para resolver captchas es utilizar un servicio de resolución de captchas como CapSolver. Este servicio utiliza algoritmos avanzados y solucionadores humanos para resolver rápida y precisamente varios tipos de captchas, incluido Cloudflare Turnstile.

Código de bonificación

¿Luchas contra el fallo repetido para resolver completamente la irritante captcha?

¡Descubre la resolución automática de captchas sin problemas con la tecnología Auto Web Unblock impulsada por IA de Capsolver!

Reclama tu Código de bonificación para las mejores soluciones de captchas; CapSolver: WEBS. Después de canjearlo, obtendrás un bono extra del 5% después de cada recarga, Ilimitado

Pasos para implementar:

  1. Regístrate en una cuenta de CapSolver.
  2. Integra la API de CapSolver en tu script de Selenium.

Ejemplo de código:

python Copy
# pip install requests
import requests
import time
 
api_key = "TU_CLAVE_API"  # tu clave api de capsolver
site_key = "0x4XXXXXXXXXXXXXXXXX"  # clave del sitio de tu sitio objetivo
site_url = "https://www.tusitio web.com"  # url de la página de tu sitio objetivo
 
def capsolver():
    payload = {
        "clientKey": api_key,
        "task": {
            "type": 'AntiTurnstileTaskProxyLess',
            "websiteKey": site_key,
            "websiteURL": site_url,
            "metadata": {
                "action": ""  # opcional
            }
        }
    }
    res = requests.post("https://api.capsolver.com/createTask", json=payload)
    resp = res.json()
    task_id = resp.get("taskId")
    if not task_id:
        print("Error al crear la tarea:", res.text)
        return
    print(f"Se obtuvo taskId: {task_id} / Obteniendo el resultado...")
 
    while True:
        time.sleep(1)  # retraso
        payload = {"clientKey": api_key, "taskId": task_id}
        res = requests.post("https://api.capsolver.com/getTaskResult", json=payload)
        resp = res.json()
        status = resp.get("status")
        if status == "ready":
            return resp.get("solution", {}).get('token')
        if status == "failed" or resp.get("errorId"):
            print("¡La resolución falló! respuesta:", res.text)
            return
 
token = capsolver()
print(token)

En este código, reemplaza TU_CLAVE_API, 0x4XXXXXXXXXXXXXXXXX y https://www.tusitio web.com con tu clave API real de CapSolver, la clave del sitio del sitio objetivo y la URL de la página a la que te diriges, respectivamente. Este script creará una tarea para resolver la captcha Turnstile y devolverá el token de solución.

2. Utilizando un ChromeDriver no detectado

Para evitar la detección por parte de Cloudflare, es fundamental emplear una versión no detectada de ChromeDriver. Los sistemas antibot de Cloudflare pueden reconocer fácilmente las instancias estándar de ChromeDriver, lo que lleva a desafíos de captcha. Un ChromeDriver no detectado modifica la huella digital y el comportamiento del navegador para minimizar las posibilidades de detección.

Pasos para implementar:

  1. Descarga un paquete de ChromeDriver no detectado, como undetected-chromedriver.
  2. Configura Selenium para que utilice esta versión modificada.

Ejemplo de código:

python Copy
from undetected_chromedriver.v2 import Chrome, ChromeOptions

options = ChromeOptions()
options.add_argument('--headless')  # Utiliza el modo sin cabeza si es necesario
driver = Chrome(options=options)

driver.get('https://example.com')
# Realiza las acciones necesarias y maneja la captcha

3. Utilizando SeleniumBase

SeleniumBase es una extensión de Selenium que mejora la funcionalidad y la facilidad de uso para el web scraping. Simplifica la gestión de las interacciones web y automatiza las tareas complejas de forma más eficaz.

Pasos para implementar:

  1. Instala SeleniumBase mediante pip:

    bash Copy
    pip install seleniumbase
  2. Utiliza las funciones de SeleniumBase para gestionar las interacciones web y manejar las captchas.

Ejemplo de código:

python Copy
from seleniumbase import BaseCase

class MyTestClass(BaseCase):
    def test_example(self):
        self.open('https://example.com')
        # Realiza las acciones necesarias y maneja la captcha

4. Utilizando el plugin Selenium Stealth

El plugin Selenium Stealth ayuda a enmascarar tus esfuerzos de automatización, haciendo más difícil que Cloudflare detecte el uso de bots. Este plugin modifica el comportamiento del navegador para simular interacciones realistas del usuario.

Pasos para implementar:

  1. Instala el plugin Selenium Stealth:

    bash Copy
    pip install selenium-stealth
  2. Integra el plugin con tu configuración de Selenium.

Ejemplo de código:

python Copy
from selenium import webdriver
from selenium_stealth import stealth

driver = webdriver.Chrome()

stealth(driver,
        languages=["en-US", "en"],
        vendor="Google Inc.",
        platform="Windows",
        webgl_vendor="Google Inc.",
        render="WebKit",
        fix_hairline=True
       )

driver.get('https://example.com')
# Realiza las acciones necesarias y maneja la captcha

5. Utilizando proxies premium

El uso de proxies premium puede ayudarte a evitar las prohibiciones de IP al distribuir tu tráfico a través de múltiples direcciones. Los proxies de alta calidad reducen significativamente el riesgo de detección y bloqueo por parte de Cloudflare.

Pasos para implementar:

  1. Adquiere una lista de proxies premium de un proveedor de confianza.
  2. Configura Selenium para que utilice estos proxies para las solicitudes web.

Conclusión

Navegar con éxito las captchas Turnstile de Cloudflare requiere una combinación de técnicas y herramientas avanzadas. Al integrar CapSolver con Selenium, utilizar versiones de ChromeDriver no detectadas, aprovechar SeleniumBase, emplear plugins stealth y utilizar proxies premium, puedes mejorar tus capacidades de web scraping al mismo tiempo que te aseguras de cumplir con los protocolos de seguridad web. Recuerda siempre cumplir con las normas éticas y utilizar estas herramientas de forma responsable en tus esfuerzos de web scraping.

Aviso de Cumplimiento: La información proporcionada en este blog es solo para fines informativos. CapSolver se compromete a cumplir con todas las leyes y regulaciones aplicables. El uso de la red de CapSolver para actividades ilegales, fraudulentas o abusivas está estrictamente prohibido y será investigado. Nuestras soluciones para la resolución de captcha mejoran la experiencia del usuario mientras garantizan un 100% de cumplimiento al ayudar a resolver las dificultades de captcha durante el rastreo de datos públicos. Fomentamos el uso responsable de nuestros servicios. Para obtener más información, visite nuestros Términos de Servicio y Política de Privacidad.

Máse

Cómo resolver Cloudflare usando Python y Go en 2025
Cómo resolver Cloudflare utilizando Python y Go en 2025

Compartiré información sobre qué es Cloudflare Turnstile, utilizando Python y Go para estas tareas, si Turnstile puede detectar raspadores Python y cómo evitarlo eficazmente utilizando soluciones como CapSolver.

Cloudflare
Logo of CapSolver

Aloísio Vítor

05-Nov-2024

Cómo resolver captchas de Cloudflare Turnstile con Selenium
Cómo resolver los captchas de Cloudflare Turnstile con Selenium

En este blog, discutiremos varias técnicas efectivas para superar los captchas de Cloudflare Turnstile usando Selenium.

Cloudflare
Logo of CapSolver

Aloísio Vítor

11-Oct-2024

Una guía para resolver los captchas de Cloudflare Turnstile en Java para la automatización web
Una guía para resolver captchas de Cloudflare Turnstile en Java para la automatización web

Aprende a automatizar interacciones web en Java y a sortear el CAPTCHA Turnstile de Cloudflare con herramientas prácticas y técnicas de codificación.

Cloudflare
Logo of CapSolver

Aloísio Vítor

08-Oct-2024

Cómo automatizar la solución de Cloudflare Turnstile para la rastreo web
Cómo automatizar la resolución de Cloudflare Turnstile para la extracción web

Exploraremos estrategias para manejar el CAPTCHA de Cloudflare Turnstile en la rastreo web y discutiremos técnicas para automatizar su solución usando Puppeteer y CapSolver en Python.

Cloudflare
Logo of CapSolver

Aloísio Vítor

27-Sep-2024

Cómo usar C# para resolver los desafíos de CAPTCHA de Cloudflare Turnstile
Cómo usar C# para resolver los desafíos de CAPTCHA de Cloudflare Turnstile

Sabrás cómo resolver fácilmente el desafío CAPTCHA de Cloudflare Turnstile usando C# y quieres saber los detalles específicos? ¡Vamos!

Cloudflare
Logo of CapSolver

Nikolai Smirnov

17-Sep-2024

Evitar el bloqueo de Cloudflare
Evadir el bloqueo de Cloudflare

Aprende a resolver el Desafío de Cloudflare con Capsolver: requisitos clave, uso de proxy y pasos detallados para una solución eficiente.

Cloudflare
Logo of CapSolver

Ethan Collins

16-May-2023