Ir al contenido principal

Trabajo con CAPTCHA

Para trabajar y resolver captchas en A-Parser, se han implementado métodos especiales que permiten enviar el captcha para su resolución a un servicio de resolución de captchas utilizando extractores:

También es fácil resolver CAPTCHA utilizando el método await this.parser.request()

Por ejemplo, la llamada a este método para Google ReCaptcha v2 se vería de la siguiente manera:

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

Puede encontrar más detalles en el ejemplo del catálogo Comprobación de la categoría de sitios a través del servicio cyren.com

Detalles sobre CAPTCHA bypass (Evasión de captcha)

await this.captcha.*

Trabajo con captcha

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

await this.captcha.recognize(preset, image, type, overrides) - carga del captcha para el reconocimiento

  • image - datos binarios de la imagen para el reconocimiento
  • preset - indica el ajuste preestablecido para Util::AntiGateUtil::AntiGate
  • type se especifica uno de: 'jpeg', 'gif', 'png'

El resultado será un hash con los campos:

  • answer - texto de la imagen
  • id - id del captcha, para poder informar posteriormente de un error a través de .reportBad
  • error - error de texto, si answer no está definido

.recognizeFromUrl(preset, url[, overrides])

await this.captcha.recognizeFromUrl(preset, url, overrides) - similar al método anterior, pero la carga del captcha se realizará automáticamente mediante el enlace (url), sin utilizar proxy

.reportBad(preset, id[, overrides])

await this.captcha.reportBad(preset, id, overrides) - informar al servicio que el captcha se ha resuelto incorrectamente