ReCAPTCHA Imagen (Teléfono)
Descripción General
Resuelve Recaptcha con velocidad ultrarrápida, precisión número 1 en el mercado. Proporcionamos servicios para resolver todos los tipos de ReCaptcha Imagen en teléfonos.
📱
Este servicio te permite enviar imágenes de captcha y recibir índices de celdas para hacer clic y resolver el captcha.

1. Crear Tarea
Solicitud
POST https://api.achicaptcha.com/createTask
Parámetros
| Nombre del Parámetro | Tipo de Dato | ¿Requerido? | Descripción |
|---|---|---|---|
clientKey | string | sí | Clave API |
task.type | string | sí | ReCaptchaPhoneTask |
task.subType | string | sí | El valor es igual a 0 |
task.image | string | sí | Imagen del captcha en formato base64, captura el área de visualización de la imagen del captcha (sin bordes, solo celdas cuadradas pequeñas) |
task.other | string | sí | Pregunta|Cantidad de cuadrícula • Pregunta: "Select all images with a bus" (full question text shown in the captcha prompt) • Cantidad de cuadrícula: 3 (o 4, 5) → other: "Select all images with a bus|4" |
Ejemplo de Solicitud
POST /createTask HTTP/1.1
Host: api.achicaptcha.com
Content-Type: application/json
{
"clientKey": "TU_CLAVE_API",
"task": {
"type": "ReCaptchaPhoneTask",
"subType": "0",
"image": "iVBORw0KGgoAAAANSUhEUgAA...(imagen codificada en base64)",
"other": "Select all images with a bus|4"
}
}Respuesta
Cuando tiene é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ámetro | Tipo de Dato | ¿Requerido? | Descripción |
|---|---|---|---|
clientKey | string | sí | Clave API |
taskId | string | sí | TaskId obtenido 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": "0,5,9"
}Nota: Para el tipo "grid", la solución es una lista de índices de imagen para hacer clic, comenzando desde 0
Explicación del Estado
errorId = 0: Resuelto exitosamente, lee el resultado ensolutionerrorId = 1: Resolviendo captcha, espera 2-3 segundos e intenta de nuevoerrorId > 1: Error del sistema, devuelve código de error y descripción
Ejemplos de Integración
import requests
import time
def solve_recaptcha_phone(image_base64, question, grid_count, api_key='TU_CLAVE_API'):
# Paso 1: Crear tarea
create_task_url = 'https://api.achicaptcha.com/createTask'
create_task_payload = {
'clientKey': api_key,
'task': {
'type': 'ReCaptchaPhoneTask',
'subType': '0',
'image': image_base64,
'other': f'{question}|{grid_count}'
}
}
response = requests.post(create_task_url, json=create_task_payload)
result = response.json()
if result['errorId'] > 1:
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-3 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'] > 1:
raise Exception(result['errorDescription'])
if result['status'] == 'ready':
return result['solution'] # Devuelve "0,5,9" - índices para hacer clic
# Si status == 'processing', continuar el bucle
# Uso
image_base64 = 'iVBORw0KGgoAAAANSUhEUgAA...' # Imagen del captcha codificada en base64
question = 'Select all images with a bus' # Full question text from the captcha prompt
grid_count = 4 # Cantidad de cuadrícula (3, 4, o 5)
solution = solve_recaptcha_phone(image_base64, question, grid_count, 'TU_CLAVE_API')
print('Índices de cuadrícula para hacer clic:', solution) # Ejemplo: "0,5,9"
# Usar solución para hacer clic en las celdas correspondientes
indices = [int(i) for i in solution.split(',')]
for index in indices:
# Hacer clic en la celda con el índice correspondiente
print(f'Hacer clic en el índice de celda: {index}')Códigos de Error Comunes
| Código de Error | Descripción | Notas |
|---|---|---|
| 0 | éxito | Éxito |
| 1 | procesando | Procesando |
| 2 | faltan campos requeridos | Faltan campos requeridos, verifica los parámetros nuevamente |
| 3 | tarea no compatible | Tipo de tarea no compatible |
| 4 | creación de tarea fallida | Creación de tarea fallida |
| 5 | la clave del cliente no existe | La clave API no existe, verifica la clave API nuevamente |
| 6 | saldo de cuenta insuficiente | Saldo de cuenta insuficiente, agrega más créditos |
| 7 | tarea fallida, por favor crea una nueva tarea | Tarea fallida, por favor crea una nueva tarea |
| 8 | el ID de tarea no existe | El ID de tarea no existe |
Mejores Prácticas
Para obtener los mejores resultados al usar la API de Achicaptcha, sigue estos principios:
1. Preparar la Imagen del Captcha
- Captura el área de visualización de la imagen del captcha claramente, sin bordes u otros elementos de la interfaz
- Solo incluye las celdas cuadradas pequeñas (cuadrícula) del captcha
- Imagen en formato base64
- Asegúrate de que la imagen tenga suficiente resolución para el reconocimiento
2. Determinar Información Precisa
- Obtén la pregunta de la parte del texto en negrita del captcha (ejemplo: "Select all images with a bus", "Select all squares with traffic lights")
- Determina el recuento de cuadrícula correcto (3x3, 4x4, o 5x5)
- Formatea
othercorrectamente: "pregunta|recuento_cuadrícula" (ejemplo: "Select all images with a bus|4")
3. Intervalo de Sondeo
- Espera al menos 2-3 segundos entre verificaciones de resultado
- No envíes spam a la API con demasiadas solicitudes consecutivas
- Establece un tiempo de espera para evitar bucles infinitos (recomendado 120 segundos)
4. Procesar Resultados
- La solución devuelta es una cadena de índices para hacer clic, separados por comas (ejemplo: "0,5,9")
- El índice comienza desde 0, contando de izquierda a derecha, de arriba a abajo
- Analiza la cadena y haz clic en las celdas correspondientes
5. Lógica de Reintento
- Implementa reintento para errores temporales como
ERROR_NO_SLOT_AVAILABLE - Usa retroceso exponencial al reintentar
- Limita los intentos máximos de reintento
6. 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: