Menu

Hoe u elke captcha met AntiGate-taken omzeilt

Een nieuwe videoversie van de AntiGate-taken handleiding is hier beschikbaar.

Na jaren van onderzoek en ontwikkeling introduceren we een universele oplossing om uw robots te helpen captcha gates te passeren die door mensen zijn gemaakt. We noemen het "AntiGate", en dit zijn de scenariosjablonen die onze menselijke medewerkers gebruiken om exacte taken uit te voeren.

Op een gegeven moment stuit uw app op een geautomatiseerde beveiligings"gateway" met een nieuw soort captcha, verdoezelde browser-scripts, of wat dan ook. Dit is waar onze AntiGate-taken van pas komen. U delegeert een van onze medewerkers om een echte menselijke browsersessie op te bouwen.
  • Kies eerst een sjabloon. U kunt een bestaande sjabloon gebruiken of er zelf een maken. Een sjabloon is een reeks stapsgewijze instructies die werknemers uitvoeren.
  • Geef als tweede alle extra gegevens die het sjabloon nodig heeft, zoals de CSS-selector van een input, of het webadres waarnaar we moeten navigeren. We zullen het zo dadelijk nog wat meer over sjablonen hebben.
  • Als derde, en optioneel - proxies. Die heeft u nodig als een website elke sessiecookie koppelt aan een exact IP-adres.
Als u deze drie hebt, maakt u een taak aan met onze API. Een medewerker navigeert naar uw website met onze speciale browser plugin en voert alle stappen van het scenario handmatig of automatisch uit. En aan het einde van het script verzamelen we alle sessiegegevens van de browser, zoals cookies, localStorage-waarden, browser vingerafdruk, en sturen die terug naar uw app. U hoeft deze gegevens alleen nog maar te gebruiken om onze werksessie te herstellen en verder te gaan alsof het een menselijke gebruiker is. Hoe geweldig is dat? :)

Wat zijn de AntiGate-sjablonen?

Een AntiGate-sjabloon difinieert een exact scenario dat onze werknemers moeten doorlopen. Sjablonen bestaan uit stappen, die allemaal achter elkaar worden uitgevoerd. Als een stap voltooid is, gaat de medewerker door naar de volgende. Als alle stappen zijn uitgevoerd is de taak klaar, en wordt er een momentopname van de sessie van de medewerker gemaakt en teruggestuurd naar uw app.

Wat voor stappen zijn er?
  • Een tekstinvoerveld automatisch of handmatig vullen.
  • Wacht tot een tekstvoorbeeld op de pagina verschijnt (of verdwijnt).
  • Wacht tot een DOM-element gedefinieerd door CSS op de pagina verschijnt (of van de pagina verdwijnt).
  • Wacht tot een trefwoord verschijnt in (of verdwijnt uit) het huidige URL-adres van de browser van de medewerker.
In het tekstveld "beschrijving voor werknemers" van het sjabloon kunt u eventuele andere stappen beschrijven die u van de medewerker verwacht. Bijvoorbeeld: "Los een captcha op en druk op de verzendknop".
Laten we een voorbeeld bekijken. Navigeer naar Ontwikkelaarscentrum en maak een gratis sjabloon om te testen. Maak u geen zorgen, u maakt niets stuk!
Klik om het sjabloon toe te voegen
Klik om een voorbeeld te laden
Let op het stappengedeelte
U heeft een demonstratievoorbeeld geladen. U kunt het opslaan in uw account en het later zelf testen. Laten we eens kennis maken met de volledige lijst van sjablooneigenschappen:
  • Naam sjabloon. Eenmaal opgeslagen, kan dit niet meer gewijzigd worden. Zodra u het publiceert, wordt uw sjabloon beschikbaar in de API onder deze naam.
  • Beschrijving voor klanten. Openbare sjablonen zijn beschikbaar in onze sjablonen directory.
  • Beschrijving voor medewerkers. Dit is de tekst die onze medewerkers bovenaan de pagina zien.
    Voorbeeld interface medewerkers
  • Variabelen. Dit is een lijst met namen van variabelen die u kunt toevoegen om in de stappen te gebruiken in plaats van permanente waarden. In dit voorbeeld hebben we 2 variabelen, "login" en "wachtwoord". Deze 2 worden gebruikt in stap 1 en 2 om het aanmeldingsformulier voor de demonstratie in te vullen. Op deze manier kunt u deze waarden opgeven via de API in plaats van een permanente login en wachtwoord te coderen in de sjabloon.
    Variabelen gebruikt in stappen 1 en 2
  • . Hier kunt u de volgorde van scenariostappen bewerken en wijzigen. In ons voorbeeld doen we het volgende:
    1. Vul het tekstveld automatisch met de CSS-selector "#login". De waarde voor het tekstveld wordt bepaald door de variabele "login".
    2. Vul het tekstveld met de CSS-selector "#wachtwoord". De waarde voor het tekstveld wordt bepaald door de variabele "wachtwoord".
    3. Wacht tot er een controletekst op de pagina verschijnt. Deze wordt permanent ingesteld op de waarde "Test geslaagd met login".

U kunt nu het sjabloon opslaan, en het zal verschijnen in uw Ontwikkelaarscentrum. Denk eraan dat het de status "Sandbox" heeft, wat betekent dat het alleen voor u beschikbaar is en niet in de API. Vanaf hier kunt u proberen uw nieuwgemaakte sjabloon te testen alsof u uw eigen medewerker bent.

Sjablonen testen

Op dit punt moet u de Chrome-browser gebruiken, en wij raden aan dat u een nieuw gebruikersprofiel aanmaakt in deze browser, omdat we onze plug-in moeten installeren, die toegang geeft tot de cookies van het profiel.
Voorbeeld interface medewerkers
Vervolgens drukt u op uw sjabloonkaart op de knop "test".
Volg de instructies en download de plugin voor uw platform. Herlaad vervolgens de pagina zodat deze in werking treedt, vul de variabelen "login" en "wachtwoord" met een aantal willekeurige waarden en druk op de knop "Test starten". Er zou een nieuwe pagina moeten openen die er als volgt uitziet:

In de buurt van de adresbalk, is er een blauwe balk die de plug-in toevoegd aan de bovenkant van de doelpagina. Dit is hoe medewerkers weten over hun opdrachten en de uitvoering van de taak controleren.

Denk eraan dat login- en wachtwoordvelden verborgen zijn wanneer u ze vult met variabelen. Dit is opzettelijk. Hoewel medewerkers volledige toegang hebben tot de taakgegevens via de ontwikkelaarsconsole, nemen 99.99% van hen niet de moeite om te onderzoeken wat er achter de schermen gebeurt.
Na het oplossen van de Recaptcha, druk op de knop "Inloggen". De laatste stap van het sjabloon, "WAIT_CONTROL_TEXT_PRESENT", zal worden doorgegeven. De plug-in zoekt naar de controlezin "Test geslaagd met inloggen", die permanent is gedefinieerd in uw sjabloon. Het tabblad sluit automatisch en de momentopname van de sessie wordt getoond in het resultatenveld.
Voorbeeld resultaten

Dezelfde momentopnamegegevens kunnen worden ontvangen van de API. Maar om uw sjabloon beschikbaar te maken in de API, moeten we het eerst publiceren.

Sjablonen publiceren

U heeft 2 opties bij het publiceren van een sjabloon: het ofwel privé ofwel openbaar maken.
  • Privésjablonen zijn alleen beschikbaar met uw API sleutel. Andere klanten kunnen ze niet gebruiken. Kosten voor beoordeling en publicatie: $1.
  • Openbare sjablonen zijn voor iedereen beschikbaar. U verdient 5% op de uitgaven van elke klant met deze sjabloon. U zult een aantal contactpersonen moeten achterlaten zodat onze klanten uw hulp kunnen inroepen als er iets misgaat met uw sjabloon. Kosten voor beoordeling en publicatie: $1.
We bekijken alle sjablonen zorgvuldig. U moet enkele basisvereisten volgen om met succes over te schakelen naar de productiemodus:
  • Geen illegale activiteiten van welke aard dan ook.
  • Sjablonen mogen geen duplicaten zijn van bestaande sjablonen.
  • Dien geen dummy- of testsjablonen in.
  • Geef een voorbeeld webadres en variabele waarden ter controle. We zullen een test starten, en alle stappen moeten succesvol worden afgerond.

API-verzoeken

Een verzoek om een taak aan te maken bij de API voor het bovenstaande AntiGate-sjabloon moet er zo eenvoudig als dit uitzien:

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

Dat wil zeggen dat u de parameters "templateName" en "variables" doorgeeft om het sjabloon in te vullen.

Taakresultaten gebruiken

Succesvol AntiGate-taken voltooid ga terug door een oploossing met "cookies", "localStorage", "vingerafdruk" en "url". Wat uw software moet doen, is naar "url" navigeren met "cookies" in dit verzoek en op zijn minst de waarde "fingerprint.self.navigator.userAgent" gebruiken voor de User-Agent van de browser. Complexere websites slaan belangrijke gegevens op in localStorage, wat een soort moderne versie van cookies is. In dit geval moet u deze gegevens op de pagina plaatsen voordat er Javascripts worden uitgevoerd. Dit kan worden gedaan in een ontwikkelomgeving zoals Puppeteer. Dit onderwerp verdient waarschijnlijk een ander artikel.

Uw eigen sjablonen maken

Volg gewoon de bovenstaande stappen zonder het voorbeeldsjabloon te laden. Vul alle gegevens netjes in en voeg de stappen zorgvuldig toe. Denk eraan dat alle stappen opeenvolgend worden uitgevoerd. De plug-in zal de uitvoering van de volgende stap niet toestaan voordat de huidige is voltooid. U kunt op elk moment uw sjabloon opslaan en het testen met de browserplug-in van de medewerker.

Prijzen

Op dit moment stellen we de prijs in op $2 per 1000 taken. Bovendien kost elke seconde van de taakuitvoering 1/60 van de taakprijs. De taak kost bijvoorbeeld $0.002, en de medewerker besteed 20 seconden aan het oplossen ervan.
De uiteindelijke kosten zullen $0.00266 = 0.002 + (0.002 / 60 * 20) zijn.