Skip to content
API
Captcha Amazon

Captcha Amazon

Aperçu

Le Captcha Amazon est un système d'authentification utilisé par Amazon pour protéger leurs sites web contre les bots et les activités automatisées. Il s'agit d'un captcha texte spécialement déformé qui n'apparaît que sur les systèmes Amazon.

🛒

Le Captcha Amazon apparaît généralement lors de la connexion, de la recherche de produits ou lorsque Amazon détecte un comportement inhabituel depuis votre adresse IP.

Captcha Amazon Captcha Amazon

1. Créer une Requête

Requête

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

Paramètres

Nom du paramètreType de donnéesRequis ?Description
clientKeystringouiClé API
task.typestringouiImageToTextTask
task.imagestringouibase64 de l'image captcha Amazon
task.subTypestringouiamazon

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 captcha Amazon encodée en base64",
    "subType": "amazon"
  }
}

Réponse

En cas de succès, le serveur renvoie 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

Nom du paramètreType de donnéesRequis ?Description
clientKeystringouiClé API
taskIdstringouiTaskId de (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": "KCXM8P"
}

Explication du Statut

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

Exemples d'Intégration

import requests
import time
import base64
 
def solve_amazon_captcha(image_path, 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': 'amazon'
        }
    }
    
    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_amazon_captcha('amazon_captcha.png', 'YOUR_API_KEY')
print('Résultat captcha Amazon:', solution)

Codes d'Erreur Courants

Code d'ErreurDescriptionNotes
0succèsSuccès
1en traitementEn traitement
2champs requis manquantsChamp requis manquant, vérifier à nouveau 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 à nouveau la clé API
6solde de compte insuffisantSolde de compte insuffisant, recharger des 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 haute résolution
  • S'assurer que les images ne sont pas trop floues ou bruitées
  • Capturer ou recadrer correctement la zone du captcha Amazon

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

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 :