Arbeta med CAPTCHA
För att hantera och lösa captcha i A-Parser har speciella metoder implementerats som gör det möjligt att skicka captcha för lösning till en captcha-lösningstjänst med hjälp av scrapers:
Util::AntiGate - löser captchas i form av bilder med bokstäver/siffror/ord
Util::ReCaptcha2 - löser Google ReCaptcha v2
Util::ReCaptcha3 - löser Google ReCaptcha v3
Util::hCaptcha - löser hCaptcha-captchas
Util::Turnstile - löser Cloudflare Turnstile-captchas
Det är också enkelt att lösa CAPTCHA med metoden await this.parser.request()
Till exempel kommer anropet av denna metod för Google ReCaptcha v2 att se ut enligt följande:
await this.parser.request('Util::ReCaptcha2', this.conf.Util_ReCaptcha2_preset, {}, siteKey + ' ' + endPoint);
Mer detaljerad information finns i exemplet från katalogen Kontroll av webbplatskategori via tjänsten cyren.com
Mer detaljer om CAPTCHA bypass (Kringgå captcha)
await this.captcha.*
Arbeta med captcha
.recognize(preset, image, type[, overrides])
await this.captcha.recognize(preset, image, type, overrides) - laddar upp captcha för igenkänning
image- binär bilddata för igenkänningpreset- anger förinställningen för
Util::AntiGatetypeanges som en av: 'jpeg', 'gif', 'png'
Resultatet blir en hash med fälten:
answer- text från bildenid- captcha-id, för att senare kunna rapportera fel via.reportBaderror- textfel om answer inte är angivet
.recognizeFromUrl(preset, url[, overrides])
await this.captcha.recognizeFromUrl(preset, url, overrides) - liknar föregående metod, men uppladdning av captcha sker automatiskt via länk (url), utan användning av proxy
.reportBad(preset, id[, overrides])
await this.captcha.reportBad(preset, id, overrides) - meddela tjänsten att captchan löstes felaktigt
Användbara länkar
🔗 ⏩ Skapa JS-scrapers. Arbete med CAPTCHA
Video om hur man skriver en JS-scraper med stöd för antigate för att lösa captchas på sidor
🔗 Skapa JS-scrapers. Arbete med CAPTCHA
Artikel om hur man skriver en JS-scraper med stöd för antigate för att lösa captchas på sidor
🔗 Kontrollera webbplatskategorier via tjänsten cyren.com
Exempel på implementering av Util::ReCaptcha2 i en JS-scraper