Startseite Dokumentation Tutorials Anmelden
Unterstützte Aufgabenarten
API-Methoden
Artikel
Tutorials
GitHub
Dokumentationsmenü

Turnstile Captcha ohne Proxy lösen - TurnstileTaskProxyless

Turnstile Captcha ist ein weiterer Versuch, Recaptcha zu ersetzen. Wir unterstützen alle seine Untertypen automatisch: manuell, nicht-interaktiv und unsichtbar. Sie müssen den Untertyp nicht angeben. Auch die Angabe eines eigenen User-Agents ist nicht notwendig und wird nicht funktionieren.

Testen Sie diesen Aufgabentyp zuerst auf Bypass-Rate, bevor Sie Aufgaben mit Vollmachten testen.

Captcha-Beispiel

Aufgabenobjekt

Wert Art Erforderlich Zweck
type String Ja TurnstileTaskProxyless
websiteURL String Ja Adresse einer Ziel-Webseite. Kann sich an beliebiger Stelle auf der Website befinden, auch in einem Mitgliederbereich. Unsere Arbeiter navigieren nicht dorthin, sondern simulieren den Besuch.
websiteKey String Ja Drehkreuz sitekey

Anfrage-Beispiel

CURL
          curl -i -H "Accept: application/json" \
     -H "Content-Type: application/json" \
     -X POST -d '{
    "clientKey":"YOUR_API_KEY_HERE",
    "task":
        {
            "type":"TurnstileTaskProxyless",
            "websiteURL":"https://website.com/",
            "websiteKey":"0xAAAAAAAABBBBBBBCCCCCC"
        },
    "softId": 0
}' https://api.anti-captcha.com/createTask
        
PHP
          <?php

//git clone git@github.com:AdminAnticaptcha/anticaptcha-php.git

include("anticaptcha.php");
include("turnstileroxyless.php");

$api = new TurnstileProxyless();
$api->setVerboseMode(true);

//your anti-captcha.com account key
$api->setKey("YOUR_API_KEY_HERE");

//target website address
$api->setWebsiteURL("http://website.com/");

//turnstile key from target website
$api->setWebsiteKey("0xAAAAAAAABBBBBBBCCCCCC");

//Specify softId to earn 10% commission with your app.
//Get your softId here: https://anti-captcha.com/clients/tools/devcenter
$api->setSoftId(0);

//create task in API
if (!$api->createTask()) {
    $api->debout("API v2 send failed - ".$api->getErrorMessage(), "red");
    return false;
}

$taskId = $api->getTaskId();

//wait in a loop for max 300 seconds till task is solved
if (!$api->waitForResult(300)) {
    echo "could not solve captcha\n";
    echo $api->getErrorMessage()."\n";
} else {

    $token = $api->getTaskSolution();
    echo "\n";
    echo "your turnstile token: $token\n\n";

}
        
Python
          #pip3 install anticaptchaofficial

from anticaptchaofficial.turnstileproxyless import *

solver = turnstileProxyless()
solver.set_verbose(1)
solver.set_key("YOUR_API_KEY_HERE")
solver.set_website_url("https://website.com")
solver.set_website_key("SITE_KEY")

# Specify softId to earn 10% commission with your app.
# Get your softId here: https://anti-captcha.com/clients/tools/devcenter
solver.set_soft_id(0)

token = solver.solve_and_return_solution()
if token != 0:
    print "token: "+token
else:
    print "task finished with error "+solver.error_code
        
NodeJS
          //npm install @antiadmin/anticaptchaofficial
//https://github.com/AdminAnticaptcha/anticaptcha-npm

const ac = require("@antiadmin/anticaptchaofficial");

ac.setAPIKey('YOUR_API_KEY_HERE');

//Specify softId to earn 10% commission with your app.
//Get your softId here: https://anti-captcha.com/clients/tools/devcenter
ac.setSoftId(0);

ac.solveTurnstileProxyless('http://DOMAIN.COM', 'WEBSITE_KEY')
    .then(token => {
        console.log('token: '+token);
    })
    .catch(error => console.log('test received error '+error));
        
C#
          //git clone git@github.com:AdminAnticaptcha/anticaptcha-csharp

using System;
using Anticaptcha_example.Api;
using Anticaptcha_example.Helper;
using Newtonsoft.Json.Linq;

namespace Anticaptcha_example
{
    internal class Program
    {
        private static void Main() {

            DebugHelper.VerboseMode = true;

            var api = new TurnstileProxyless
            {
                ClientKey = "YOUR_API_KEY_HERE",
                WebsiteUrl = new Uri("http://website.com/"),
                WebsiteKey = "0xAAAAAAAABBBBBBBCCCCCC",
                // Specify softId to earn 10% commission with your app.
                // Get your softId here:
                // https://anti-captcha.com/clients/tools/devcenter
                SoftId = 0
            };

            if (!api.CreateTask())
                DebugHelper.Out("API v2 send failed. " + api.ErrorMessage, DebugHelper.Type.Error);
            else if (!api.WaitForResult())
                DebugHelper.Out("Could not solve the captcha.", DebugHelper.Type.Error);
            else
                DebugHelper.Out("Result: " + api.GetTaskSolution().token, DebugHelper.Type.Success);

        }
    }
}
        
Java
          //git clone git@github.com:AdminAnticaptcha/anticaptcha-java.git

package com.anti_captcha;

import com.anti_captcha.Api.TurnstileProxyless;
import com.anti_captcha.Helper.DebugHelper;

import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;

import java.net.MalformedURLException;
import java.net.URL;
import java.util.Iterator;
import java.util.concurrent.ThreadLocalRandom;

public class Main {

    public static void main(String[] args) throws InterruptedException, MalformedURLException, JSONException {

        DebugHelper.setVerboseMode(true);

        TurnstileProxyless api = new TurnstileProxyless();
        api.setClientKey("YOUR_API_KEY_HERE");
        api.setWebsiteUrl(new URL("http://website.com/"));
        api.setWebsiteKey("0xAAAAAAAABBBBBBBCCCCCC");

        //Specify softId to earn 10% commission with your app.
        //Get your softId here: https://anti-captcha.com/clients/tools/devcenter
        api.setSoftId(0);

        if (!api.createTask()) {
            DebugHelper.out(
                    "API v2 send failed. " + api.getErrorMessage(),
                    DebugHelper.Type.ERROR
            );
        } else if (!api.waitForResult()) {
            DebugHelper.out("Could not solve the captcha.", DebugHelper.Type.ERROR);
        } else {
            DebugHelper.out("Result: " + api.getTaskSolution().getToken(), DebugHelper.Type.SUCCESS);
        }
    }
}

        

Antwort-Beispiel

JSON ohne Fehler
          {
    "errorId": 0,
    "taskId": 7654321
}
        
JSON mit Fehler
          {
    "errorId": 1,
    "errorCode": "ERROR_KEY_DOES_NOT_EXIST",
    "errorDescription": "Account authorization key not found in the system"
}
        

Lösung abrufen

Verwenden Sie die Methode getTaskResult, um die Lösung anzufordern. Geben Sie dem Arbeiter etwas Zeit, ca. 5 Sekunden, bevor Sie die Anfrage stellen. Falls der Arbeiter noch beschäftigt ist, warten Sie weitere 3 Sekunden.

Aufgabenlösungsobjekt

Wert Art Zweck
token String Token-String, der für die Interaktion mit dem Einreichungsformular auf der Ziel-Website erforderlich ist.
userAgent String User-Agent des Browsers des Arbeitnehmers. Verwenden Sie es, wenn Sie das Antwort-Token übermitteln.

Antwort-Beispiel

JSON ohne Fehler
          {
    "errorId":0,
    "status":"ready",
    "solution":
    {
        "token":"0.vtJqmZnvobaUzK2i2PyKaSqHELYtBZfRoPwMvLMdA81WL_9G0vCO3y2VQVIeVplG0mxYF7uX.......",
        "userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Firefox/102.0"
    },
    "cost":"0.001500",
    "ip":"46.98.54.221",
    "createTime":1472205564,
    "endTime":1472205570,
    "solveCount":"0"
}