一尘不染

使用p操纵器通过无头Chrome绕过验证码

node.js

google发现我的浏览器正在manipulated/controlled/automated通过软件运行,因此我得到了reCaptcha。当我手动启动铬并执行相同的步骤时,不会出现reCaptcha。

Question 1)

是否可以以编程方式解决验证码或在使用时摆脱它puppeteer?有什么办法解决这个问题?

Question 2)

只有在没有headless选择的情况下才会发生这种情况i.e

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

还是这是我们必须接受并继续前进的事实?


阅读 403

收藏
2020-07-07

共1个答案

一尘不染

尝试使用此npm软件包生成随机useragent
。这通常可以解决基于用户代理的保护。

在伪造者页面中,可以使用 page.setUserAgent

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

此外,您可以添加这两个额外的插件,

puppeteer-extra-plugin-recaptcha-使用单行代码自动解决reCAPTCHA:page.solveRecaptchas()

puppeteer-extra-plugin-stealth-应用各种逃避技术,使对无头木偶的检测更加困难。

2020-07-07