Hur du förbigår alla typer av captchor med AntiGate-uppdrag
En ny videoversion av AntiGate tasks tutorial är tillgänglig här.
Efter ett par år av efterforskning och utveckling introducerar vi nu en universallösning för att hjälpa dina robotar förbigå captchor skapade av människor. Vi kallar dem "AntiGate". De är scenariomallar som vår mänskliga arbetsstyrka använder för att utföra specifika uppgifter.

- Först väljer du en mall. Du kan välja en redan existerande eller skapa din egen. En mall är en uppsättning instruktioner i steg-för-steg-form som arbetare utför.
- Ange sedan den övriga data mallen kräver, som värden till formulär att fylla i, inputfältens CSS-selektorer och webbadressen det gäller. Vi återkommer till mallar om en liten stund.
- För det andra, och frivilligt – proxys. Du behöver dem om webbplatsen kopplar ihop varje sessionscookie med en specifik ip-adress.
Vad är AntiGate-mallar?
En AntiGate-mall definierar ett specifikt scenario som våra arbetare ska utföra. Mallar består av steg, som alla utförs i den ordning de anges. När ett steg är genomfört går arbetaren vidare till nästa. När alla steg är genomförda är uppdraget slutfört och en snapshot av arbetarens session skickas tillbaka till din app.
- Fylla i formulärfält automatiskt eller manuellt.
- Vänta på att en viss text ska dyka upp på (eller försvinna från) sidan.
- Vänta på att ett visst DOM-element, definierat med CSS, ska dyka upp på (eller försvinna från) sidan.
- Vänta på att ett visst ord ska dyka upp i (eller försvinna från) arbetarens aktuella URL.



- Mallens namn. När det väl är sparat kan det inte ändras. När du publicerar den finns mallen tillgänglig i API:t under detta namn.
- Beskrivning för kunder. Publika mallar finns tillgänliga i vårt mallbibliotek.
- Beskrivning för arbetare. Detta är den text våra arbetare ser längst upp på sidan.Exempel på arbetarnas vy
- Variabler. Det här är en lista med namn på variabler som du kan lägga till i stegen i stället för att använda permanenta värden. I det här exemplet har vi två variabler: "login" och "password". Dessa två används i steg 1 och 2 för att fylla i exempelformuläret för inloggning. På så sätt kan du skicka dessa värden via API:t i stället för att hårdkoda inloggningsuppgifterna i mallen.Variabler som används i steg 1 och 2.
- Arbetarens steg. Här kan du ändra stegen samt dess ordning i scenariot. I vårt exempel gör vi följande:
1. Fyll i textfältet med CSS-selektorn "#login" automatiskt. Värdet för textfältet definieras av variabeln "login".
2. Fyll i textfältet med CSS-selektorn "#password" automatiskt. Värdet för textfältet definieras av variabeln "password".
3. Vänta tills en kontrolltext dyker upp på sidan. Den är permanent satt till värdet "Test passed with login".
Du kan nu spara mallen och den kommer att synas i ditt Developers Center. Lägg märke till att den har "sandbox"-status, vilket innebär att den bara finns tillgänglig för dig och är inte tillgänglig i API:t. Härifrån kan du prova att testa din nyskapade mall som om du var din egna arbetare.
Testa mallar



I närheten av adressfältet syns ett blått fält som tillägget har lagt till på toppen av målsidan. Det är på det sättet arbetarna får information om sina uppdrag och kontrollerar uppdragets genomförande.
Lägg också märke till att fälten för användarnamn och lösenord är dolda när de fylls med variabler. Det är medvetet. Även om arbetare har full tillgång till uppdragsdatan via utvecklarverktyget så bryr sig 99,99 % av dem inte om vad som sker i bakgrunden.

Samma snapshotdata kan hämtas via API. Men för att göra din mall tillgänglig i API:t behöver vi först publicera den.
Publicera mallar
- Privata mallar kan endast användas med din API-nyckel. Andra kunder kan inte använda dem. Kostnad för att granska och publicera: 1 USD.
- Publika mallar är tillgängliga för alla. Du tjänar 5 % av vad varje kund spenderar med denna mall. Du måste lämna några kontaktuppgifter så att våra kunder kan kontakta dig om det uppstår något fel med din mall och de behöver hjälp. Kostnad för att granska och publicera: 1 USD.
- Ingen olaglig aktivitet av något slag.
- Mallar får inte vara duplikat av redan existerande mallar.
- Ladda inte upp dummy- eller testmallar.
- Skicka med en exempel-URL och variabelvärden för granskning. Vi genomför ett test och alla steg ska kunna genomföras utan problem.
API-förfrågningar
En API-förfrågan om att skapa ett uppdrag för ovan nämnda AntiGate-mall kan vara så enkel som följande:
curl -i -H "Accept: application/json" \
-H "Content-Type: application/json" \
-X POST -d '{
"clientKey":"YOUR_API_KEY",
"task":
{
"type":"AntiGateTask",
"websiteURL":"https://anti-captcha.com/demo/?page=recaptcha_v2_textarea",
"templateName":"Demo sign-in at anti-captcha.com #123456",
"variables": {
"login":"some value",
"password":"some value"
}
}
}' https://api.anti-captcha.com/createTask
Det vill säga att för att fylla i mallen skickar du med parametrarna "templateName" och "variables".
Använda uppdragsresultat
Skapa dina egna mallar
Följ helt enkelt stegen ovan utan att ladda exempelmallen. Fyll i alla detaljer noggrant och lägg till stegen. Tänk på att stegen genomförs i den ordning du anger dem. Tillägget tillåter inte utförandet av nästa steg innan det pågående är slutfört. Du kan när som helst spara mallen och testa den med arbetarnas webbläsartillägg.
Priser
För tillfället har vi satt priset till 2 USD per 1 000 uppdrag. Varje sekund uppdraget tar att utföra kostar sedan 1/60 av uppdragspriset. Exempel: uppdraget kostar 0,002 USD och arbetaren lade ner 20 sekunder på att lösa det.
Den totala kostnaden blir då 0,00266 = 0,002 + (0,002 / 60 * 20).