Skip to content
API
Captcha Texte

Captcha Texte

Aperçu

Un captcha texte standard est une image contenant du texte déformé lisible par les humains. Pour résoudre l'image captcha, les utilisateurs doivent saisir le texte de l'image.

📝

Le captcha texte peut inclure des chiffres, des lettres ou une combinaison des deux. Ils utilisent généralement des distorsions d'image, du bruit et diverses polices pour rendre la lecture automatisée difficile.

Captcha texte commun

1. Créer une Tâche

Requête

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

Paramètres

ParamètreType de DonnéesRequis ?Description
clientKeystringouiClé API
task.typestringouiImageToTextTask
task.imagestringouiBase64 de l'image
task.subTypestringouiL'un des types suivants : common, amazon, microsoft, facebook, garena, artistshot, gmx, 11166, houssam

Exemple de Requête

POST /createTask HTTP/1.1
Host: api.achicaptcha.com
Content-Type: application/json
 
{
  "clientKey": "Votre API_KEY",
  "task": {
    "type": "ImageToTextTask",
    "image": "image encodée en base64",
    "subType": "gmx"
  }
}

Réponse

En cas de succès, le serveur renverra errorId = 0 et taskId

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

2. Obtenir le Résultat

Requête

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

Paramètres

ParamètreType de DonnéesRequis ?Description
clientKeystringouiClé API
taskIdstringouiTaskId de l'étape (1)

Exemple de Requête

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

Réponse

{
  "errorId": 0,
  "status": "ready",
  "solution": "swamn"
}

Explication du Statut

  • errorId = 0 et status = ready : Résolu avec succès, lire le résultat dans solution.text
  • errorId = 0 et status = processing : Le captcha est en cours de résolution, attendre 2 secondes et réessayer
  • errorId > 0 : Erreur système, code d'erreur et description fournis

Options de SubType

Achicaptcha prend en charge différents types de captcha texte via le paramètre subType :

SubTypeDescription
commonCaptcha texte commun, le plus populaire
amazonCaptcha spécifique à Amazon avec distorsion spéciale
microsoftCaptcha utilisé sur les services Microsoft
facebookCaptcha Facebook avec polices distinctives
garenaCaptcha sur la plateforme Garena
artistshotCaptcha du site web Artistshot
gmxCaptcha email GMX
11166Type de captcha spécial avec code 11166
houssamType de captcha spécifique nommé Houssam
discordType de captcha spécifique à Discord
okvipType de captcha spécifique à OKVIP
shopeeType de captcha spécifique à Shopee
📝

Généralement subType : common peut gérer tous les types de captcha texte. Si le captcha texte de votre site web est trop spécifique, veuillez contacter admin (opens in a new tab) pour obtenir de l'aide.

Exemples d'Intégration

import requests
import time
import base64
 
def solve_captcha(image_path, sub_type='common', api_key='YOUR_API_KEY'):
    # Lire et encoder l'image
    with open(image_path, 'rb') as image_file:
        image_base64 = base64.b64encode(image_file.read()).decode('utf-8')
    
    # Étape 1 : Créer une tâche
    create_task_url = 'https://api.achicaptcha.com/createTask'
    create_task_payload = {
        'clientKey': api_key,
        'task': {
            'type': 'ImageToTextTask',
            'image': image_base64,
            'subType': sub_type
        }
    }
    
    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']
    
    # Étape 2 : Obtenir le résultat
    get_result_url = 'https://api.achicaptcha.com/getTaskResult'
    
    while True:
        time.sleep(2)  # Attendre 2 secondes
        
        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', continuer la boucle
 
# Utilisation
solution = solve_captcha('captcha.png', 'common', 'YOUR_API_KEY')
print('Résultat du captcha:', solution)

Codes d'Erreur Courants

Code d'ErreurDescriptionNotes
0succèsSuccès
1en traitementEn traitement
2champs requis manquantsChamps requis manquants, vérifier les paramètres
3tâche non prise en chargeType de tâche non pris en charge
4échec de création de tâcheÉchec de création de tâche
5clé client inexistanteLa clé API n'existe pas, vérifier votre clé API
6solde de compte insuffisantSolde de compte insuffisant, ajouter plus de crédits
7tâche échouée, veuillez créer une nouvelle tâcheTâche échouée, veuillez créer une nouvelle tâche
8ID de tâche inexistantL'ID de tâche n'existe pas

Meilleures Pratiques

Pour obtenir les meilleurs résultats lors de l'utilisation de l'API Achicaptcha, suivez ces principes :

1. Qualité de l'Image

  • Utiliser des images avec une bonne résolution
  • S'assurer que les images ne sont pas trop floues ou bruitées
  • Choisir le subType approprié pour votre type de captcha

2. Intervalle de Polling

  • Attendre au moins 2 secondes entre les vérifications de résultat
  • Ne pas spammer l'API avec trop de requêtes consécutives
  • Avoir un timeout pour éviter les boucles infinies

3. Logique de Réessai

  • Implémenter un réessai pour les erreurs temporaires comme ERROR_NO_SLOT_AVAILABLE
  • Utiliser un backoff exponentiel lors du réessai
  • Limiter le nombre maximum de tentatives de réessai

4. Sécurité de la Clé API

  • Ne pas coder en dur la clé API dans le code
  • Utiliser des variables d'environnement
  • Ne pas exposer la clé API côté client

Liens Utiles :