Indice

Téléchargez les exemples d'exemples basés sur l'API:

Support API RECAPTCHA obsolète/hérité

Qu`est-ce que la "reCAPTCHA/noCAPTCHA héritée/obsolète"?

Exist a legacy/outdated reCAPTCHA challenges that typically require the user to identify and click on certain images. They`re not to be confused with traditional word/number reCAPTCHAs (those have no images).

Pour votre convenance, nous avons implémenté un support pour l'API Recaptcha hérité/obsolète. Si votre logiciel fonctionne avec lui et prend en charge une configuration minimale, vous devriez être en mesure de décoder les captchas en utilisant Death by Captcha en un rien de temps.

Nous fournissons deux types différents d'API Recaptcha hérité/obsolète :

  • Coordinates API: Fourni d'une capture d'écran, l'API renvoie un groupe de coordonnées pour cliquer.
  • Image Group API: Fourni d'un groupe d'images (encodées) (codées), l'API renvoie les index des images à cliquer.

Prix

Pour le moment, le prix est de 3,99 $ / 1k, les nouveaux défis RECAPTCHA sont correctement résolus. Vous ne serez pas facturé pour les images signalées comme incorrectement résolues. Notez que ce prix s'applique uniquement aux nouvelles images reCAPTCHA / noCAPTCHA, de sorte que seuls les clients utilisant cette API spécifique seront facturés au-dessus du taux.

Restrictions de téléchargement d'images.

La taille du fichier image est limitée à moins de 180 kb . Lorsque l'image sera codée dans la base64, la taille doit être inférieure à 120 kb . Les formats d'image pris en charge sont jpg, png, gif et bmp .

FAQ API Coordonnées:

Qu'est-ce que la coordonne URL de l'API?

Pour utiliser la coordonnées API, vous devrez envoyer une demande HTTP Post à http://api.dbcapi.me/api/captcha

Quels sont les paramètres de poste pour les coordonnées API?

Ceux-ci sont:

  • username: Votre nom d'utilisateur de compte DBC
  • password: Votre mot de passe du compte DBC
  • captchafile: Un contenu de fichiers encodé en Base64 ou multipart avec une capture d'écran Recaptcha hérité/obsolète valide
  • type=2: Le Type 2 spécifie qu'il s'agit d'un RecaptCha hérité / coordonnées API
Quelle est la réponse de la coordonnée API?

captcha: id du captcha fourni, si le champ text est nul, vous devrez interroger l'url http://api.dbcapi.me/api/captcha/captcha_id jusqu'à ce qu'il soit disponible

is_correct: (0 ou 1) spécifiant si le captcha était marqué comme incorrect ou illisible

text: Une liste imbriquée de type JSON, avec toutes les coordonnées (x, y) pour cliquer par rapport à l'image, par exemple:

    [[23.21, 82.11]]

où la coordonnée X est de 23,21 et que la coordonnée y est 82.11

Utilisation de coordonnées API avec les clients d'API:


    /**
     * Death by Captcha PHP API newrecaptcha_coordinates usage example
     *
     * @package DBCAPI
     * @subpackage PHP
     */

    /**
     * DBC API clients
     */
    require_once '../deathbycaptcha.php';

    $username = "username";  // DBC account username
    $password = "password";  // DBC account password
    $token_from_panel = "your-token-from-panel";  // DBC account authtoken

    // Use DeathByCaptcha_SocketClient() class if you want to use SOCKET API.
    $client = new DeathByCaptcha_HttpClient($username, $password);
    $client->is_verbose = true;

    // To use token the first parameter must be authtoken.
    // $client = new DeathByCaptcha_HttpClient("authtoken", $token_from_panel);

    echo "Your balance is {$client->balance} US cents\n";

    $captcha_filename = "../images/test.jpg";  // your image here
    $extra = [
        'type' => 2  // captcha_type
    ];

    // Put your CAPTCHA image file name, file resource, or vector of bytes,
    // and optional solving timeout (in seconds) here; you'll get CAPTCHA
    // details array on success.
    if ($captcha = $client->decode($captcha_filename, $extra)) {
        echo "CAPTCHA {$captcha['captcha']} uploaded\n";

        sleep(DeathByCaptcha_Client::DEFAULT_TIMEOUT);

        // Poll for CAPTCHA coordinates:
        if ($text = $client->get_text($captcha['captcha'])) {
            echo "CAPTCHA {$captcha['captcha']} solved: {$text}\n";

            // Report an incorrectly solved CAPTCHA.
            // Make sure the CAPTCHA was in fact incorrectly solved!
            //$client->report($captcha['captcha']);
        }
    }

    

    # new recaptcha coordinates
    import deathbycaptcha

    # Put your DBC account username and password here.
    username = "user"
    password = "password"

    # you can use authtoken instead of user/password combination
    # activate and get the authtoken from DBC users panel
    authtoken = "authtoken"

    # to use socket client
    # client = deathbycaptcha.SocketClient(username, password)

    # to use authtoken
    # client = deathbycaptcha.SocketClient(username, password, authtoken)

    client = deathbycaptcha.HttpClient(username, password)

    captcha_file = '../images/test.jpg'  # image

    try:
        balance = client.get_balance()
        print(balance)

        # Put your CAPTCHA file name or file-like object, and optional
        # solving timeout (in seconds) here:
        captcha = client.decode(captcha_file, type=2)
        if captcha:
            # The CAPTCHA was solved; captcha["captcha"] item holds its
            # numeric ID, and captcha["text"] item its list of "coordinates".
            print("CAPTCHA %s solved: %s" % (captcha["captcha"],
                                             captcha["text"]))

            if '':  # check if the CAPTCHA was incorrectly solved
                client.report(captcha["captcha"])
    except deathbycaptcha.AccessDeniedException:
        # Access to DBC API denied, check your credentials and/or balance
        print("error: Access to DBC API denied, check your credentials
                and/or balance")

    

    import com.DeathByCaptcha.AccessDeniedException;
    import com.DeathByCaptcha.Client;
    import com.DeathByCaptcha.HttpClient;
    import com.DeathByCaptcha.SocketClient;
    import com.DeathByCaptcha.Captcha;

    import java.io.IOException;

    class ExampleRecaptchaCoordinates {
        public static void main(String[] args)
                throws Exception {

            // Put your DBC username & password or authtoken here:
            String username = "your_username_here";
            String password = "your_password_here";
            String authtoken = "your_authtoken_here";

            String filename = "src/images/test.jpg";

            /* Death By Captcha Socket Client
               Client client = (Client) (new SocketClient(username, password));
               Death By Captcha http Client */
            Client client = (Client) (new HttpClient(username, password));
            client.isVerbose = true;

            /* Using authtoken
            Client client = (Client) new HttpClient(authtoken); */

            try {
                try {
                    System.out.println("Your balance is " + client.getBalance() + " US cents");
                } catch (IOException e) {
                    System.out.println("Failed fetching balance: " + e.toString());
                    return;
                }

                Captcha captcha = null;
                try {
                    /* Upload a CAPTCHA and poll for its status with 120 seconds timeout.
                       Put you CAPTCHA image file name, file object, input stream, or
                       vector of bytes, and solving timeout (in seconds) if 0 the default value take place.
                       please note we are specifying type=2 in the second argument */
                    captcha = client.decode(filename, 2, 0);
                } catch (IOException e) {
                    System.out.println("Failed uploading CAPTCHA");
                    return;
                }
                if (null != captcha) {
                    System.out.println("CAPTCHA " + captcha.id + " solved: " + captcha.text);

                    /* Report incorrectly solved CAPTCHA if necessary.
                       Make sure you've checked if the CAPTCHA was in fact incorrectly
                       solved, or else you might get banned as abuser. */
                    /*try {
                        if (client.report(captcha)) {
                            System.out.println("Reported as incorrectly solved");
                        } else {
                            System.out.println("Failed reporting incorrectly solved CAPTCHA");
                        }
                    } catch (IOException e) {
                        System.out.println("Failed reporting incorrectly solved CAPTCHA: " + e.toString());
                    }*/
                } else {
                    System.out.println("Failed solving CAPTCHA");
                }
            } catch (com.DeathByCaptcha.Exception e) {
                System.out.println(e);
            }

        }
    }

    

    // new recaptcha coordinates

    using System;
    using System.Collections;
    using DeathByCaptcha;

    namespace DBC_Examples.examples
    {
        public class RecaptchaCoordinatesExample
        {
            public void Main()
            {
                // Put your DeathByCaptcha account username and password here.
                string username = "your username";
                string password = "your password";
                // string token_from_panel = "your-token-from-panel";

                string filename = "./images/test.jpg";
                /* Death By Captcha Socket Client
                   Client client = (Client) new SocketClient(username, password);
                   Death By Captcha http Client */
                Client client = (Client) new HttpClient(username, password);

                /* To use token authentication the first parameter must be "authtoken".
                Client client = (Client) new HttpClient("authtoken", token_from_panel); */

                try
                {
                    double balance = client.GetBalance();

                    /* Put your CAPTCHA file name, or file object,
                       or arbitrary stream, or an array of bytes,
                       and optional solving timeout (in seconds) here:
                    */
                    Captcha captcha = client.Decode(filename, 0, new Hashtable()
                    {
                        {"type", 2}
                    });

                    if (null != captcha)
                    {
                        /* The CAPTCHA was solved; captcha.Id property holds
                        its numeric ID, and captcha.Text holds its text. */
                        Console.WriteLine("CAPTCHA {0} solved: {1}", captcha.Id,
                            captcha.Text);

                        // if ( /* check if the CAPTCHA was incorrectly solved */)
                        //{
                        //client.Report(captcha);
                        //}
                    }
                }
                catch (AccessDeniedException e)
                {
                    /* Access to DBC API denied, check your credentials and/or balance */
                    Console.WriteLine("<<< catch : " + e.ToString());
                }
            }
        }
    }

    

    Imports DeathByCaptcha

    Public Class NewRecaptchaCoordinates
        Sub Main(args As String())

            ' Put your DBC username & password or authtoken here:
            Dim username = "username"
            Dim password = "password"
            Dim token_from_panel = "your-token-from-panel"

            ' DBC Socket API client
            ' Dim client As New SocketClient(username, password)
            ' DBC HTTP API client
            Dim client As New HttpClient(username, password)

            ' To use token auth the first parameter must be "authtoken"
            ' Dim client As New HttpClient("authtoken", token_from_panel)

            Dim filename = "./images/test.jpg"

            Console.WriteLine(String.Format("Your balance is {0,2:f} US cents",
                                            client.Balance))

            ' Create the extra data with type
            Dim extraData as new Hashtable()
            extraData.Add("type", 2)

            ' Upload a CAPTCHA and poll for its status.  Put the Token CAPTCHA
            ' Json payload, CAPTCHA type and desired solving timeout (in seconds)
            ' here. If solved, you'll receive a DeathByCaptcha.Captcha object.
            Dim captcha As Captcha = client.Decode(filename,
                                                   DeathByCaptcha.Client.DefaultTimeout,
                                                   extraData)
            If captcha IsNot Nothing Then
                Console.WriteLine(String.Format("CAPTCHA {0:d} solved: {1}", captcha.Id,
                                                captcha.Text))

                ' Report an incorrectly solved CAPTCHA.
                ' Make sure the CAPTCHA was in fact incorrectly solved, do not
                ' just report it at random, or you might be banned as abuser.
                ' If client.Report(captcha) Then
                '    Console.WriteLine("Reported as incorrectly solved")
                ' Else
                '    Console.WriteLine("Failed reporting as incorrectly solved")
                ' End If
            End If

        End Sub
    End Class

    

    ' this script uses DeCaptcher API, to use this API first we need to opt-in our user in the following URL
    ' http://deathbycaptcha.com/user/api/decaptcher
    ' Is recomended to read the FAQ in that page

    ' this script can use authentication token instead of username/password combination
    ' to use this API with authentication token, first we need enable token authentication on users panel
    ' when using authentication token the username must be the keyword authtoken
    ' and the password is the authentication token from users panel


    VERSION BUILD=844

    URL GOTO=http://api.dbcapi.me/decaptcher?function=picture2&print_format=html
    TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:http://api.dbcapi.me/decaptcher ATTR=NAME:username
                                                                CONTENT={{YOUR_DBC_USERNAME}}
    TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:http://api.dbcapi.me/decaptcher ATTR=NAME:password
                                                                CONTENT={{YOUR_DBC_PASSWORD}}
    TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:http://api.dbcapi.me/decaptcher ATTR=NAME:pict
                                                                CONTENT={{PATH_TO_FILE}}
    TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:http://api.dbcapi.me/decaptcher ATTR=NAME:pict_type CONTENT=2
    TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:http://api.dbcapi.me/decaptcher ATTR=VALUE:Send

    TAG POS=6 TYPE=TD ATTR=* EXTRACT=TXT
    SET !VAR1 {{!EXTRACT}}

    

    /*
    * Death by Captcha Node.js API newrecaptcha_coordinates usage example
    */

    const dbc = require('../deathbycaptcha');

    const username = 'username';     // DBC account username
    const password = 'password';     // DBC account password
    const token_from_panel = 'your-token-from-panel';   // DBC account authtoken

    const captcha_file = '../images/test.jpg';    // Image filename src

    // Death By Captcha Socket Client
    // const client = new dbc.SocketClient(username, password);
    // Death By Captcha http Client
    const client = new dbc.HttpClient(username, password);

    // To use token authentication the first parameter must be "authtoken"
    // const client = new dbc.HttpClient("authtoken", token_from_panel);

    // Get user balance
    client.get_balance((balance) => {
        console.log(balance);
    });

    // Solve captcha with type 2 extra argument
    client.decode({captcha: captcha_file, extra: {type: 2}}, (captcha) => {

        if (captcha) {
            console.log('Captcha ' + captcha['captcha'] + ' solved: ' + captcha['text']);

            // Report an incorrectly solved CAPTCHA.
            // Make sure the CAPTCHA was in fact incorrectly solved!
            // client.report(captcha['captcha'], (result) => {
            //   console.log('Report status: ' + result);
            // });
        }

    });

    

API GROUP IMAGE API FAQ:

Quel est l'URL de l'API du groupe d'images

Pour utiliser l'API de groupe d'images, vous devrez envoyer une demande de message HTTP à http://api.dbcapi.me/api/captcha

Quels sont les paramètres de publication pour l'API du groupe d'images?

Ceux-ci sont:

  • username: Votre nom d'utilisateur de compte DBC
  • password: Votre mot de passe du compte DBC
  • captchafile: Le contenu de fichier / image encodé en base64 avec le Recaptcha hérité/obsolète valide.
  • banner: L'image de bannière codée Base64 (l'exemple d'image qui apparaît en haut à droite)
  • banner_text: Le texte de la bannière (le texte qui apparaît en haut à gauche)
  • type=3: Le Type 3 spécifie qu'il s'agit d'une API de groupe d'images Recaptcha héritée/obsolète
  • grid: Le paramètre de grille facultatif spécifie les images individuelles de la grille en captcha alignées sur (chaîne, largeur "x" hauteur, ex.: "2x4", si les images alignées sur 4 lignes avec 2 images dans chacun. Si non fournie, DBC tentera de automatiquement la grille.
Quelle est la réponse de l'API du groupe d'images?

captcha: id du captcha fourni, si le champ text est nul, vous devrez interroger l'url http://api.dbcapi.me/api/captcha/captcha_id jusqu'à ce qu'il soit disponible

is_correct:(0 ou 1) spécifiant si le captcha était marqué comme incorrect ou illisible

text: Une liste JSON de l'index pour chaque image qui doit être cliquée. Par exemple:

    [1, 4, 6]

où les images qui doivent être cliquées sont la première, la quatrième et les six, en comptant de gauche à droite et en bas

Utilisation de l'API du groupe d'images avec les clients de l'API:


    # new recaptcha image group
    import deathbycaptcha

    # Put your DBC account username and password here.
    username = "username"
    password = "password"
    # you can use authtoken instead of user/password combination
    # activate and get the authtoken from DBC users panel
    authtoken = "authtoken"

    # to use socket client
    # client = deathbycaptcha.SocketClient(username, password)

    # to use authtoken
    # client = deathbycaptcha.SocketClient(username, password, authtoken)

    client = deathbycaptcha.HttpClient(username, password)

    captcha_file = '../images/test2.jpg'  # image
    banner = "../images/banner.jpg"  # image banner
    banner_text = "select all pizza:"  # banner text

    try:
        balance = client.get_balance()
        print(balance)

        # Put your CAPTCHA file name or file-like object, and optional
        # solving timeout (in seconds) here:
        captcha = client.decode(captcha_file, type=3, banner=banner,
                                banner_text=banner_text)
        # you can supply optional `grid` argument to decode() call, with a
        # string like 3x3 or 2x4, defining what grid individual images were
        # located at example:
        # captcha = client.decode(captcha_file, type=3, banner=banner,
        #                         banner_text=banner_text, grid="2x4")
        # see 2x4.png example image to have an idea what that images look like
        # If you wont supply `grid` argument, dbc will attempt to autodetect
        # the grid

        if captcha:
            # The CAPTCHA was solved; captcha["captcha"] item holds its
            # numeric ID, and captcha["text"] is a json-like list of
            # the index for each image that should be clicked.
            print("CAPTCHA %s solved: %s" % (captcha["captcha"],
                                             captcha["text"]))

            if '':  # check if the CAPTCHA was incorrectly solved
                client.report(captcha["captcha"])
    except deathbycaptcha.AccessDeniedException:
        # Access to DBC API denied, check your credentials and/or balance
        print("error: Access to DBC API denied, check your credentials
              and/or balance")

    

    import com.DeathByCaptcha.AccessDeniedException;
    import com.DeathByCaptcha.Client;
    import com.DeathByCaptcha.HttpClient;
    import com.DeathByCaptcha.SocketClient;
    import com.DeathByCaptcha.Captcha;

    import java.io.IOException;

    class ExampleRecaptchaImageGroup {
        public static void main(String[] args)
                throws Exception {

            // Put your DBC username & password or authtoken here:
            String username = "your_username_here";
            String password = "your_password_here";
            String authtoken = "your_authtoken_here";

            String filename = "src/images/test2.jpg";
            String banner = "src/images/banner.jpg";
            String banner_text = "choose all pizza:";

            /* Death By Captcha Socket Client
               Client client = (Client) (new SocketClient(username, password));
               Death By Captcha http Client */
            Client client = (Client) (new HttpClient(username, password));
            client.isVerbose = true;

            /* Using authtoken
               Client client = (Client) new HttpClient(authtoken); */

            try {
                try {
                    System.out.println("Your balance is " + client.getBalance()
                                        + " US cents");
                } catch (IOException e) {
                    System.out.println("Failed fetching balance: "
                                        + e.toString());
                    return;
                }

                Captcha captcha = null;

                try {
                    /* Upload a CAPTCHA and poll for its status with 120
                       seconds timeout. Put you CAPTCHA image file name,
                       file object, input stream, or vector of bytes, and
                       solving timeout (in seconds) if 0 the default value
                       take place. please note we are specifying banner,
                       banner_test and type=3 in the second argument */
                    captcha = client.decode(filename, 3, banner,
                                            banner_text, 0);
                    /* you can supply optional `grid` argument to decode()
                       call, with a string like 3x3 or 2x4, defining what
                       grid individual images were located at

                      example:
                        captcha = client.decode(filename, 3, banner,
                                                banner_text, "2x4", 0);

                      see 2x4.png example image to have an idea what that images
                      look like. If you wont supply `grid` argument, dbc will
                      attempt to autodetect the grid */

                } catch (IOException e) {
                    System.out.println("Failed uploading CAPTCHA");
                    return;
                }
                if (null != captcha) {
                    System.out.println("CAPTCHA " + captcha.id + " solved: "
                                        + captcha.text);

                    /* Report incorrectly solved CAPTCHA if necessary.
                       Make sure you've checked if the CAPTCHA was in fact
                       incorrectly solved, or else you might get banned
                       as abuser. */
                    /*try {
                        if (client.report(captcha)) {
                            System.out.println("Reported as incorrectly solved");
                        } else {
                            System.out.println("Failed reporting incorrectly
                                                                solved CAPTCHA");
                        }
                    } catch (IOException e) {
                        System.out.println("Reporting incorrectly solved CAPTCHA:"
                                           + e.toString());
                    }*/
                } else {
                    System.out.println("Failed solving CAPTCHA");
                }
            } catch (com.DeathByCaptcha.Exception e) {
                System.out.println(e);
            }

        }
    }

    

    // new recaptcha image group

    using System;
    using System.Collections;
    using DeathByCaptcha;

    namespace DBC_Examples.examples
    {
        public class RecaptchaImageGroupExample
        {
            public void Main()
            {
                // Put your DeathByCaptcha account username and password here.
                string username = "your username";
                string password = "your password";
                // string token_from_panel = "your-token-from-panel";

                string filename = "./images/test2.jpg";
                string banner = "./images/banner.jpg";
                string banner_text = "choose all pizza:";

                /* Death By Captcha Socket Client
                   Client client = (Client) new SocketClient(username, password);
                   Death By Captcha http Client */
                Client client = (Client) new HttpClient(username, password);

                /* To use token authentication the first parameter must be "authtoken".
                Client client = (Client) new HttpClient("authtoken", token_from_panel); */

                try
                {
                    double balance = client.GetBalance();

                    /* Put your CAPTCHA file name, or file object,
                       or arbitrary stream, or an array of bytes,
                       and optional solving timeout (in seconds) here:
                    */
                    Captcha captcha = client.Decode(filename, 0, new Hashtable()
                    {
                        {"type", 3},
                        {"banner_text", banner_text},
                        {"banner", banner}
                        /*
                        - If you want to specify grid data: {"grid", "4x2"}
                        - If you wont supply  grid parameter, dbc would attempt to
                        autodetect proper grid.*/
                    });

                    if (null != captcha)
                    {
                        /* The CAPTCHA was solved; captcha.Id property holds
                        its numeric ID, and captcha.Text holds its text. */
                        Console.WriteLine("CAPTCHA {0} solved: {1}", captcha.Id,
                            captcha.Text);

                    // if ( /* check if the CAPTCHA was incorrectly solved */)
                    //{
                    //client.Report(captcha);
                    //}
                    }
                }
                catch (AccessDeniedException e)
                {
                    /* Access to DBC API denied, check your credentials and/or balance */
                    Console.WriteLine("<<< catch : " + e.ToString());
                }
            }
        }
    }

    

    Imports DeathByCaptcha

    Public Class NewRecaptchaImageGroup
        Sub Main(args As String())

            ' Put your DBC username & password or authtoken here:
            Dim username = "username"
            Dim password = "password"
            Dim token_from_panel = "your-token-from-panel"

            ' DBC Socket API client
            ' Dim client As New SocketClient(username, password)
            ' DBC HTTP API client
            Dim client As New HttpClient(username, password)

            ' To use token auth the first parameter must be "authtoken"
            ' Dim client As New HttpClient("authtoken", token_from_panel)

            Dim filename = "./images/test2.jpg"
            Dim banner = "./images/banner.jpg"
            Dim banner_text = "choose all pizza:"

            Console.WriteLine(String.Format("Your balance is {0,2:f} US cents",
                                            client.Balance))

            ' Create the extra data with type
            Dim extraData as new Hashtable()
            extraData.Add("type", 3)
            extraData.Add("banner", banner)
            extraData.Add("banner_text", banner_text)
            ' If you want to specify grid data: extraData.Add("grid", "4x4")
            ' If you wont supply  grid parameter, dbc would attempt to autodetect
            ' proper grid.

            ' Upload a CAPTCHA and poll for its status.  Put the Token CAPTCHA
            ' Json payload, CAPTCHA type and desired solving timeout (in seconds)
            ' here. If solved, you'll receive a DeathByCaptcha.Captcha object.
            Dim captcha As Captcha = client.Decode(filename,
                                                   DeathByCaptcha.Client.DefaultTimeout,
                                                    extraData)
            If captcha IsNot Nothing Then
                Console.WriteLine(String.Format("CAPTCHA {0:d} solved: {1}", captcha.Id,
                                                captcha.Text))

                ' Report an incorrectly solved CAPTCHA.
                ' Make sure the CAPTCHA was in fact incorrectly solved, do not
                ' just report it at random, or you might be banned as abuser.
                ' If client.Report(captcha) Then
                '    Console.WriteLine("Reported as incorrectly solved")
                ' Else
                '    Console.WriteLine("Failed reporting as incorrectly solved")
                ' End If
            End If
        End Sub
    End Class

    

    ' this script uses DeCaptcher API, to use this API first we need to opt-in our user in the following URL
    ' http://deathbycaptcha.com/user/api/decaptcher
    ' Is recomended to read the FAQ in that page

    ' this script can use authentication token instead of username/password combination
    ' to use this API with authentication token, first we need enable token authentication on users panel
    ' when using authentication token the username must be the keyword authtoken
    ' and the password is the authentication token from users panel

    VERSION BUILD=844

    URL GOTO=http://api.dbcapi.me/decaptcher?function=imagegroup&print_format=html
    TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:http://api.dbcapi.me/decaptcher ATTR=NAME:username
                                                                CONTENT={{YOUR_DBC_USERNAME}}
    TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:http://api.dbcapi.me/decaptcher ATTR=NAME:password
                                                                CONTENT={{YOUR_DBC_PASSWORD}}
    TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:http://api.dbcapi.me/decaptcher ATTR=NAME:pict
                                                                CONTENT={{PATH_TO_MAIN_IMAGE}}
    TAG POS=1 TYPE=INPUT:FILE FORM=ACTION:http://api.dbcapi.me/decaptcher ATTR=NAME:banner
                                                                CONTENT={{PATH_TO_BANNER_IMAGE}}
    TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:http://api.dbcapi.me/decaptcher ATTR=NAME:banner_text
                                                                CONTENT={{BANNER_TEXT}}
    TAG POS=1 TYPE=INPUT:TEXT FORM=ACTION:http://api.dbcapi.me/decaptcher ATTR=NAME:grid CONTENT={{GRID}}
    TAG POS=1 TYPE=INPUT:SUBMIT FORM=ACTION:http://api.dbcapi.me/decaptcher ATTR=VALUE:Send

    TAG POS=6 TYPE=TD ATTR=* EXTRACT=TXT
    SET !VAR1 {{!EXTRACT}}

    

    /*
    * Death by Captcha Node.js API newrecaptcha_image_groups usage example
    */

    const dbc = require('../deathbycaptcha');

    const username = 'username';     // DBC account username
    const password = 'password';     // DBC account password
    const token_from_panel = 'your-token-from-panel';   // DBC account authtoken

    const captcha_file = '../images/test2.jpg';           // Captcha image filename src
    const banner = '../images/banner.jpg';                // Banner image filename src
    const banner_text = 'select all pizza:';    // Banner text

    // Death By Captcha Socket Client
    // const client = new dbc.SocketClient(username, password);
    // Death By Captcha http Client
    const client = new dbc.HttpClient(username, password);

    // To use token authentication the first parameter must be "authtoken"
    // const client = new dbc.HttpClient("authtoken", token_from_panel);

    // Get user balance
    client.get_balance((balance) => {
        console.log(balance);
    });

    // Solve captcha with type 3, banner & banner_text extra arguments
    client.decode({captcha: captcha_file, extra: {type: 3, banner: banner,
                                                  banner_text: banner_text}
                  }, (captcha) => {

        // you can supply optional `grid` argument to decode() call, with a
        // string like 3x3 or 2x4, defining what grid individual images were located at
        // example:
        // captcha = client.decode({captcha: captcha_file,
        //                          extra: {type: 3, banner: banner,
        //                                  banner_text: banner_text, grid: "2x4"},
        //           (captcha) => {
        //   ...
        // });
        // see 2x4.png example image to have an idea what that images look like
        // If you wont supply `grid` argument, dbc will attempt to autodetect the grid

        if (captcha) {
            console.log('Captcha ' + captcha['captcha'] + ' solved: ' + captcha['text']);

            // Report an incorrectly solved CAPTCHA.
            // Make sure the CAPTCHA was in fact incorrectly solved!
            // client.report(captcha['captcha'], (result) => {
            //   console.log('Report status: ' + result);
            // });
        }

    });

    

Exemples de code d'utilisation pour les coordonnées API et API du groupe d'images:

1) Envoyez votre image:

Veuillez noter que nous utilisons Type = "2" pour l'API CAPTCHA Coordonnées.


    curl --header 'Expect: ' -F username=your_username_here \
                             -F password=your_password_here \
                             -F captchafile=@'your_captcha_filename.jpg' \
                             -F type='2' http://api.dbcapi.me/api/captcha
    

OU:

Veuillez noter que nous utilisons Type="3" pour l'API du groupe d'images CAPTCHA.


    curl --header 'Expect: ' -F username=your_username_here \
                             -F password=your_password_here \
                             -F captchafile=@'your_captcha_filename.jpg' \
                             -F banner=@'your_banner_filename.jpg' \
                             -F banner_text=banner_text_here  \
                             -F type='3' http://api.dbcapi.me/api/captcha
    

Ou, si vous fournissez des informations sur la grille (hauteur x largeur). Dans cet exemple, la grille 4x2 est utilisée, vous devez le spécifier en fonction de l'image téléchargée. Si vous ne fournissez pas le paramètre de la grille, DBC tenterait de automatiquement la grille appropriée.


    curl --header 'Expect: ' -F username=your_username_here \
                             -F password=your_password_here \
                             -F captchafile=@'your_captcha_filename.jpg' \
                             -F banner=@'your_banner_filename.jpg' \
                             -F banner_text=banner_text_here  \
                             -F type='3' http://api.dbcapi.me/api/captcha
                             -F grid=4x2
    

Le résultat est une données URL_Encoded comprenant le CAPTCHA_ID respectif:

    'status=0&captcha=CAPTCHA_ID&text=&is_correct=1'

2) Tirer les coordonnées CAPTCHA: Prenez le CAPTCHA_ID donné et faites une demande comme ceci:

curl -H "Accept: application/json" \
    http://api.dbcapi.me/api/captcha/CAPTCHA_ID

Le résultat est une chaîne JSON où le "text" du champ comprend les coordonnées respectives:

'{"status": 0, "captcha": 2911096,
  "is_correct": true, "text": "[[57,240],[156,335]"}'

Statut: OK

Les serveurs sont pleinement opérationnels avec un temps de réponse plus rapide que la moyenne.
  • Temps de résolution moyen
  • 1 secondes - Normal CAPTCHAs (1 min. il y a)
  • 28 secondes - reCAPTCHA V2, V3, etc (1 min. il y a)
  • 14 secondes - hCAPTCHA & autres (1 min. il y a)
Chrome and Firefox logos
Extensions du navigateur disponibles

Mises à jour

  1. Apr 26: RESOLVED - The deathbycaptcha.com website (the API remained/remains fully functional) was sporadically inaccessible due to network issues on April 25th & 26th. This situation was fully resolved and everything is back to 100%.
  2. Feb 26: NEW TYPE ADDED - Now supporting Friendly CAPTCHA!! See the details at https://deathbycaptcha.com/api/friendly
  3. Nov 22: Now supporting Amazon WAF!! See the details at https://deathbycaptcha.com/api/amazonwaf

  4. Mises à jour précédentes…

Soutien

Notre système est conçu pour être totalement convivial et facile à utiliser. Si vous rencontrez des problèmes, envoyez-nous simplement un e-mail àE-mail du support technique DBC com, et un agent de support vous répondra dans les plus brefs délais.

Support en direct

Disponible du lundi au vendredi (10 h à 16 h HNE) Live support image. Link to live support page