Skip to content
API
Captcha de Facebook

Captcha de Facebook

Descripción General

El Captcha de Facebook es un sistema de seguridad utilizado por Facebook para prevenir spam, bots y actividades automatizadas no deseadas. Este es un captcha de texto con la fuente distintiva de Facebook.

📘

El Captcha de Facebook generalmente aparece al iniciar sesión, registrar nuevas cuentas o cuando Facebook detecta actividad inusual desde tu cuenta.

Facebook Captcha

1. Crear Solicitud

Solicitud

POST https://api.achicaptcha.com/createTask

Parámetros

Nombre del parámetroTipo de dato¿Requerido?Descripción
clientKeystringClave API
task.typestringImageToTextTask
task.imagestringbase64 de la imagen del captcha de Facebook
task.subTypestringfacebook

Ejemplo de Solicitud

POST /createTask HTTP/1.1
Host: api.achicaptcha.com
Content-Type: application/json
 
{
  "clientKey": "TU_CLAVE_API",
  "task": {
    "type": "ImageToTextTask",
    "image": "imagen del captcha de Facebook codificada en base64",
    "subType": "facebook"
  }
}

Respuesta

En caso de éxito, el servidor devuelve errorId = 0 y taskId

{
  "errorId": 0,
  "taskId": "f2fc70d6-c76b-4fba-9480-205ac1fe9fb9"
}

2. Obtener Resultado

Solicitud

POST https://api.achicaptcha.com/getTaskResult

Parámetros

Nombre del parámetroTipo de dato¿Requerido?Descripción
clientKeystringClave API
taskIdstringTaskId de (1)

Ejemplo de Solicitud

POST /getTaskResult HTTP/1.1
Host: api.achicaptcha.com
Content-Type: application/json
 
{
  "clientKey": "TU_CLAVE_API",
  "taskId": "f2fc70d6-c76b-4fba-9480-205ac1fe9fb9"
}

Respuesta

{
  "errorId": 0,
  "status": "ready",
  "solution": "2m7k8x"
}

Explicación del Estado

  • errorId = 0 y status = ready: Resuelto exitosamente, lee el resultado en solution
  • errorId = 0 y status = processing: Resolviendo captcha, espera 2 segundos e intenta de nuevo
  • errorId > 0: Error del sistema, devuelve código de error y descripción

Ejemplos de Integración

import requests
import time
import base64
 
def solve_facebook_captcha(image_path, api_key='TU_CLAVE_API'):
    # Leer y codificar imagen
    with open(image_path, 'rb') as image_file:
        image_base64 = base64.b64encode(image_file.read()).decode('utf-8')
    
    # Paso 1: Crear tarea
    create_task_url = 'https://api.achicaptcha.com/createTask'
    create_task_payload = {
        'clientKey': api_key,
        'task': {
            'type': 'ImageToTextTask',
            'image': image_base64,
            'subType': 'facebook'
        }
    }
    
    response = requests.post(create_task_url, json=create_task_payload)
    result = response.json()
    
    if result['errorId'] != 0:
        raise Exception(result['errorDescription'])
    
    task_id = result['taskId']
    
    # Paso 2: Obtener resultado
    get_result_url = 'https://api.achicaptcha.com/getTaskResult'
    
    while True:
        time.sleep(2)  # Esperar 2 segundos
        
        get_result_payload = {
            'clientKey': api_key,
            'taskId': task_id
        }
        
        response = requests.post(get_result_url, json=get_result_payload)
        result = response.json()
        
        if result['errorId'] != 0:
            raise Exception(result['errorDescription'])
        
        if result['status'] == 'ready':
            return result['solution']
        
        # Si status == 'processing', continuar el bucle
 
# Uso
solution = solve_facebook_captcha('facebook_captcha.png', 'TU_CLAVE_API')
print('Resultado del captcha de Facebook:', solution)

Códigos de Error Comunes

Código de ErrorDescripciónNotas
0éxitoÉxito
1procesandoProcesando
2faltan campos requeridosFalta campo requerido, verifica los parámetros nuevamente
3tarea no compatibleTipo de tarea no compatible
4creación de tarea fallidaCreación de tarea fallida
5la clave del cliente no existeLa clave API no existe, verifica la clave API nuevamente
6saldo de cuenta insuficienteSaldo de cuenta insuficiente, recarga créditos
7tarea fallida, por favor crea una nueva tareaTarea fallida, por favor crea una nueva tarea
8el ID de tarea no existeEl ID de tarea no existe

Mejores Prácticas

Para lograr los mejores resultados al usar la API de Achicaptcha, sigue estos principios:

1. Calidad de Imagen

  • Usa imágenes de alta resolución
  • Asegúrate de que las imágenes no estén excesivamente borrosas o con ruido
  • Captura o recorta el área correcta del captcha de Facebook

2. Intervalo de Sondeo

  • Espera al menos 2 segundos entre verificaciones de resultado
  • No envíes spam a la API con demasiadas solicitudes consecutivas
  • Ten un tiempo de espera para evitar bucles infinitos

3. Lógica de Reintento

  • Implementa reintento para errores temporales como ERROR_NO_SLOT_AVAILABLE
  • Usa retroceso exponencial al reintentar
  • Limita el número máximo de reintentos

4. Seguridad de la Clave API

  • No codifiques la clave API en el código
  • Usa variables de entorno
  • No expongas la clave API en el lado del cliente

Enlaces Útiles: