无头浏览器检测[英] Headless browser detection

问题描述

您是否知道任何 webapps/在线测试/在线防火墙试图检测用户是否使用 selenium/puppeteer/phantomJS 或任何其他无头浏览器?

我已经创建了我的 puppeteer 在线爬虫.我已经更改了许多不同的东西,例如 window.navigator 对象(用户代理、~.webdriver 等).

现在我想确保它是不可检测的.

解决方案

有一个无头浏览器检测测试 测试以下内容:

  • User-Agent 是否包含字符串"HeadlessChrome"?
  • navigator.webdriver 是否未设置?
  • window.chrome 是否未设置?
  • 浏览器是否跳过请求权限(如通知)?
  • 浏览器插件不可用吗?
  • navigator.languages 是否未设置?

如果您的浏览器以"是"回答这些问题中的任何一个,那么您未通过测试.有关测试的更多信息,请查看此 帖子,这是对名为 "Detecting Chrome无头,新技术".

后一篇文章的作者还发布了另一个测试测试 (code),声称能够检测机器人和爬虫.它对浏览器属性执行各种测试并生成浏览器的指纹.

网站进行的其他"软"测试,可能包括鼠标移动、滚动行为、IP 地址等.我怀疑你会发现很多关于这些信息的测试,因为这基本上是一个猫捉老鼠的游戏.

本文地址:https://www.itbaoku.cn/post/1739820.html