无头浏览器检测

问题描述 投票:1回答:1

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

我已经创建了我的木偶在线爬虫。我已经改变了很多不同的东西,比如window.navigator对象(user-agent,〜.webdriver等)。

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

selenium webdriver phantomjs puppeteer headless-browser
1个回答
2
投票

有一个headless browser detection test测试以下:

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

如果您的浏览器回答任何问题,那么您将无法通过测试。有关测试的更多信息,请查看此post,这是对"Detecting Chrome headless, new techniques"帖子的回复。

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

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

© www.soinside.com 2019 - 2024. All rights reserved.