Cómo omitir CAPTCHA usando Python#

Acerca de CAPTCHA#

CAPTCHA es la abreviatura de "Prueba de Turing pública completamente automatizada para distinguir entre computadoras y humanos", que es una prueba de Turing que distingue de manera completamente automática a las computadoras y a los humanos. Es una prueba que se utiliza para confirmar si el visitante de un sitio web es una persona real y no un programa automatizado como un bot o malware. CAPTCHA generalmente se presenta al usuario como una imagen y requiere que el usuario ingrese las palabras o números que ve en un cuadro de texto. Este tipo de prueba aprovecha el reconocimiento humano de imágenes y texto para garantizar la seguridad del sitio web y evitar ataques maliciosos y operaciones automatizadas.

Preparación ambiental#

Puede instalar el SDK de Python NextCaptcha usando pip:
pip install nextcaptcha-python

uso#

Para comenzar a usar el SDK de NextCaptcha Python, primero debe obtener la clave API (clientKey) del panel de NextCaptcha. Luego puede crear una instancia de NextCaptchaAPI:
from nextcaptcha import NextCaptchaAPI
 
api = NextCaptchaAPI(client_key="YOUR_CLIENT_KEY")
Ahora puedes usar objetos API para resolver varios tipos de captchas. Para resolver el desafío reCAPTCHA v2, utilice el método recaptchav2:
result = api.recaptchav2(website_url="https://example.com", website_key="SITE_KEY")
Resolución de reCAPTCHA v2 Enterprise Para resolver los desafíos de reCAPTCHA v2 Enterprise, utilice el método recaptchav2enterprise:
result = api.recaptchav2enterprise(website_url="https://example.com", website_key="SITE_KEY")
Resolviendo reCAPTCHA v3 Para resolver los desafíos de reCAPTCHA v3, use el método recaptchav3:
result = api.recaptchav3(website_url="https://example.com", website_key="SITE_KEY")
Resolviendo reCAPTCHA Mobile Para resolver el desafío reCAPTCHA Mobile, use el método recaptcha_mobile:
result = api.recaptcha_mobile(app_key="APP_KEY")
Resolver hCaptcha Para resolver los desafíos de hCaptcha, utilice el método hcaptcha:
result = api.hcaptcha(website_url="https://example.com", website_key="SITE_KEY")
Resolución de hCaptcha Enterprise Para resolver los desafíos de hCaptcha Enterprise, utilice el método hcaptcha_enterprise:
result = api.hcaptcha_enterprise(website_url="https://example.com", website_key="SITE_KEY")
Resolviendo FunCaptcha Para resolver el desafío FunCaptcha, use el método funcaptcha:
result = api.funcaptcha(website_public_key="WEBSITE_PUBLIC_KEY")
Verificar el saldo de la cuenta Para verificar el saldo de su cuenta NextCaptcha, use el método get_balance:
balance = api.get_balance()
print(f"Account balance: {balance}")
Aquí hay un ejemplo completo de cómo resolver un desafío reCAPTCHA v2 usando el SDK de Python NextCaptcha:
from nextcaptcha import NextCaptchaAPI
 
CLIENT_KEY = "YOUR_CLIENT_KEY"
WEBSITE_URL = "https://example.com"
WEBSITE_KEY = "SITE_KEY"
 
api = NextCaptchaAPI(client_key=CLIENT_KEY)
result = api.recaptchav2(website_url=WEBSITE_URL, website_key=WEBSITE_KEY)
 
if result["status"] == "ready":
    print(f"reCAPTCHA solved: {result['solution']}")
else:
    print(f"Failed to solve reCAPTCHA: {result['error']}")

Manejo de errores#

Si hay un error en el código de verificación, el SDK devolverá un diccionario que contiene información del error. Puede verificar el campo de estado para determinar si la solicitud fue exitosa. Si el estado es "Listo", el código de verificación se resolvió exitosamente y la solución estará disponible en el campo de solución. Si el estado es "Error", el campo de error contendrá una descripción del error.