google обнаруживает, что мой браузер использует manipulated/controlled/automated из-за программного обеспечения, и поэтому я получаю reCaptcha. Когда я вручную запускаю хром и выполняю те же шаги, reCaptcha не появляется.

Question 1)

Можно ли с помощью puppeteer решить проблему с помощью капчи программно или избавиться от нее? Любой способ решить это?

Question 2)

Это происходит только тогда, когда без headless опции i.e

const browser = await puppeteer.launch({
  headless: false
})

ИЛИ это то, что мы должны принять и двигаться дальше?

31
rinold simon 14 Апр 2019 в 20:30

2 ответа

Лучший ответ

Попробуйте сгенерировать случайный идентификатор пользователя с помощью этого пакета npm. Обычно это решает защиту на основе пользовательского агента.

На страницах кукловода можно переопределить пользовательский агент браузера с помощью page.setUserAgent

var userAgent = require('user-agents');
...
await page.setUserAgent(userAgent.toString())

Кроме того, вы можете добавить эти два дополнительных плагина,

puppeteer-extra-plugin-stealth - применяет различные методы уклонения для обнаружения Безголовый кукловод сложнее.

10
rinold simon 30 Ноя 2019 в 07:14

Вы пытались настроить агент браузера?

await page.setUserAgent('5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36');
3
Hellonearthis 15 Апр 2019 в 07:04