Passer au contenu principal

Gestion des CAPTCHA

Pour le fonctionnement et la résolution de captcha dans A-Parser, des méthodes spéciales ont été implémentées pour permettre l'envoi de captchas à un service de résolution en utilisant les scrapers :

Il est également facile de résoudre un CAPTCHA en utilisant la méthode await this.parser.request()

Par exemple, l'appel de cette méthode pour Google ReCaptcha v2 ressemblera à ceci :

await this.parser.request('Util::ReCaptcha2', this.conf.Util_ReCaptcha2_preset, {}, siteKey + ' ' + endPoint);

Vous pouvez trouver plus de détails dans l'exemple du catalogue Vérification de la catégorie des sites via le service cyren.com

Détails sur le CAPTCHA bypass (Contournement de captcha)

await this.captcha.*

Gestion des captchas

.recognize(preset, image, type[, overrides])

await this.captcha.recognize(preset, image, type, overrides) - chargement du captcha pour reconnaissance

  • image - données binaires de l'image pour la reconnaissance
  • preset - indique la présélection pour Util::AntiGateUtil::AntiGate
  • type spécifie l'un des suivants : 'jpeg', 'gif', 'png'

Le résultat sera un hash avec les champs :

  • answer - texte de l'image
  • id - id du captcha, pour pouvoir signaler une erreur ultérieurement via .reportBad
  • error - erreur textuelle si answer n'est pas défini

.recognizeFromUrl(preset, url[, overrides])

await this.captcha.recognizeFromUrl(preset, url, overrides) - analogue à la méthode précédente, mais le chargement du captcha sera effectué automatiquement via le lien (url), sans utiliser de proxy

.reportBad(preset, id[, overrides])

await this.captcha.reportBad(preset, id, overrides) - signaler au service que le captcha a été mal résolu