AntiGateTask: una nuova soluzione per bypassare qualsiasi protezione captcha
Questo è un tipo di task in cui la tua app fornisce l'indirizzo URL di una pagina e un compito personalizzato per i nostri lavoratori. Loro lo completano passo dopo passo e poi restituiscono le loro impronte digitali e i loro cookie completi alla tua app, cosa che può far continuare la sessione.
Per la descrizione completa della tecnologia consulta questo articolo.
Si noti che esistono parametri proxy opzionali. Sono accettati solo i proxy HTTPS; "proxyAddress" deve essere un indirizzo IP. L'accesso al proxy deve essere aperto da tutto Internet, poiché i lavoratori comunicano direttamente con loro.
Oggetto del task
Proprietà | Tipo | Richiesto | Scopo |
---|---|---|---|
type | Stringa | Sì | AntiGateTask |
websiteURL | Stringa | Sì | Indirizzo di una pagina web bersaglio dove navigherà il nostro lavoratore. |
templateName | Stringa | Sì | Nome di un modello di scenario del nostro database. Puoi usare un modello esistente o crearne uno tuo. Puoi cercare un modello esistente sotto questa scheda. |
variables | Oggetto | Sì | Un oggetto che contiene le variabili del modello e i loro valori. |
domainsOfInterest | Matrice | No | Elenco dei nomi di dominio in cui raccogliere i cookie e i dati di localStorage. Questo elenco può anche essere definito staticamente durante la modifica del template. |
proxyAddress | Stringa | No | L'indirizzo IP del proxy ipv4/ipv6. Nessun host name né indirizzo IP dalle reti locali. |
proxyPort | Numero intero | No | Porta del proxy |
proxyLogin | Stringa | No | Accesso per il proxy che richiede l'autorizzazione (basico) |
proxyPassword | Stringa | No | Password del proxy |
Raccolta di modelli
Task con un proxy
Click "view" button at one of the templates
Task senza proxy
Click "view" button at one of the templates
Step modello
Contatti dell'autore
Esempio di risposta
JSON senza errori
{
"errorId": 0,
"taskId": 7654321
}
JSON con un errore
{
"errorId": 1,
"errorCode": "ERROR_KEY_DOES_NOT_EXIST",
"errorDescription": "Account authorization key not found in the system"
}
Ottieni la soluzione
Usa il metodo getTaskResult per richiedere la soluzione. Dai un po' di tempo al lavoratore, ad esempio 5 secondi, prima di fare la prima richiesta. Se il lavoratore è ancora occupato riprova dopo 3 secondi.
Oggetto soluzione task
Proprietà | Tipo | Scopo |
---|---|---|
cookies | Oggetto | Un oggetto con cookie presi all'ultima pagina visitata da un lavoratore. |
localStorage | Oggetto | Simile ai cookie, un oggetto con valori localStorage preso all'ultima pagina. |
fingerprint | Oggetto | Impostazioni delle impronte digitali del browser. Utilizzale assieme con i cookie e localStorage per ricreare nel tuo software la sessione di navigazione del lavoratore. |
url | Stringa | URL della pagina dove è terminata l'esecuzione del modello |
domain | Stringa | Nome del dominio della pagina finale |
HTMLsInBase64 | Matrice | Un array di istantanee HTML delle aree della pagina codificate in base64. Le istantanee sono prese dai passaggi "TAKE_HTML_SNAPSHOT_BY_SELECTOR" nei modelli AntiGate. |
screenshots | Matrice | Eventuali screenshot presi dal browser del lavoratore. Per ordinare le schermate, aggiungere il passo TAKE_SCREENSHOT al modello. |
requestHeaders | Matrice | Intestazioni di richiesta da "domainsOfInterest", se presenti. Per ordinare le intestazioni, attivare l'opzione "Raccogli intestazioni HTTP di richiesta dai domini di interesse" nel modello. |
responseHeaders | Matrice | Intestazioni di risposta da "domainsOfInterest", se presenti. Per ordinare le intestazioni, attivare l'opzione "Raccogli intestazioni HTTP di risposta dai domini di interesse" nel modello. |
Esempio di risposta
JSON senza errori
{
"errorId": 0,
"status": "ready",
"solution": {
"cookies": {
"_ym_uid": "1637841149407895406",
"_ym_d": "1637841149",
"_ym_isad": "2",
"i18n_redirected2": "en"
},
"localStorage": {
"_ym40786994_lsid": "322553582843",
"_ym40786994_reqNum": "3",
"_ym_fip": "\"65aac1083a9e31e5db7fc4a33816f1da-a81f3b9bcdd80a361c14af38dc09b309-a81f3b9bcdd80a361c14af38dc09b309-4bd84c89c35a312599d807af285e7b5f-615e6e8d95ae2de0910b550b0e4dfce2-00b2e6de4e7f2e69dd7de8ef95c7338a-61b9878bbce18de73aafc8582a198c0c-33ad8703f96139d946191563a4c623e6-a81f3b9bcdd80a361c14af38dc09b309-c6d7b47b2dcff33f80cab17f3a360d0b-a95e7098ce4ab7ec9daa7fb4154b8ff4\"",
"_ym_retryReqs": "{}",
"_ym40786994_lastHit": "1637841164076",
"_ym_uid": "\"1637841149407895406\""
},
"fingerprint": {
"self.navigator.userAgent": "Mozilla\/5.0 (Windows NT 6.3; Win64; x64; rv:94.0) Gecko\/20100101 Firefox\/94.0",
"self.screen.width": 1280,
"self.screen.height": 768,
"self.screen.availWidth": 1280,
"self.screen.availHeight": 728,
"self.screen.availLeft": 0,
"self.screen.availTop": 0,
"self.navigator.vendorSub": "",
"self.navigator.productSub": "20100101",
"self.navigator.vendor": "",
"self.navigator.maxTouchPoints": 0,
"self.navigator.hardwareConcurrency": 2,
"self.navigator.cookieEnabled": true,
"self.navigator.appCodeName": "Mozilla",
"self.navigator.appName": "Netscape",
"self.navigator.appVersion": "5.0 (Windows)",
"self.navigator.platform": "Win32",
"self.navigator.product": "Gecko",
"self.navigator.language": "en-US",
"self.navigator.onLine": true,
"self.navigator.doNotTrack": "unspecified"
},
"url": "https:\/\/anti-captcha.com\/tutorials\/success-page?login=some%20login&pass=the%20password",
"domain": "anti-captcha.com",
"domainsOfInterest": {
"any-other-domain.com": {
"cookies": {
"example": "value",
"comment": "This will be available when you fill a list of Domains Of Interest in the template itself or via domainsOfInterest parameter in the task object"
},
"localStorage": {
"example": "localStorage value"
},
"url": "https://any-other-domain.com/some/path",
"domain": "any-other-domain.com"
}
},
"screenshots": [],
"requestHeaders": [],
"responseHeaders": []
},
"cost": "0.00858",
"ip": "5.25.11.114",
"createTime": 1637841143,
"endTime": 1637841189,
"solveCount": 0
}