puppeteer:我可以判断我的 site/app 是否是带有 puppeteer 的浏览器吗?

puppeteer: Can I tell if my site/app is browsed with pupeteer?

我正在创建一个可以自动执行一些任务的小应用程序。我想知道是否有人使用过该应用程序(例如使用 puppeteer 或其他方式)。

是否有一些赠品天气操纵者正在浏览或用户正在手动浏览网站(不同的用户代理或其他)?

这些是我目前从 Puppeteer v0.12.0 版收到的headers:

{
  "host": "localhost:3001",
  "connection": "keep-alive",
  "upgrade-insecure-requests": "1",
  "user-agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_0) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/64.0.3240.0 Safari/537.36",
  "accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8",
  "accept-encoding": "gzip, deflate"
}

在user-agent中发现了HeadlessChrome,所以可以以此为基础进行天真的检测。

请注意,爬虫很容易更改用户代理。 Puppeteer 在其 page 实例上公开了一个 setUserAgent 方法。文档可以是 found here.