有没有办法检测 Web 客户端是否是 puppeteer 实例?

Is there a way to detect if a web client is a puppeteer instance?

我想检测访问网站的客户是否在使用 puppeteer 而不是真实用户。

puppeteer 是否添加了一个请求 header 表明该请求来自 puppeteer?

编辑:

假设我创建了一个网站。我想阻止使用 puppeteer 的用户,因为我希望我的用户成为 "real" 用户(单击按钮的人,而不是模仿按钮单击的脚本)。我想知道是否有任何我可以检查的具体内容 (headers?) 可以将他识别为人偶操纵者而不是真人,因此我可以忽略他的请求(即不在数据库中保存任何内容,重定向到错误页面或其他东西)

另一个编辑:

正如@root 指出的那样,我可以在浏览器中检测到用户代理是否由自动化控制(如 Puppeteer)。虽然这不是我首先想到的(我想检测 headers 所以我会 ignore/block 在服务器端处理并能够登录然后查明使用自动化的用户),我会接受如果没有其他选择,它作为答案。

如果您指的是 "a client visiting MY website" 和 "using a webdriver instead of being a real user",您可以向您的网站添加一个 JavaScript 片段来检查 navigator.webdriver,如果是,则该网站的行为会有所不同.