无头浏览器检测
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了无头浏览器检测相关的知识,希望对你有一定的参考价值。
您是否知道任何试图检测用户是否正在使用selenium / puppeteer / phantomJS或任何其他无头浏览器的webapps /在线测试/在线防火墙?
我已经创建了我的木偶在线爬虫。我已经改变了很多不同的东西,比如window.navigator
对象(user-agent,〜.webdriver等)。
现在我想确保它是不可检测的。
答案
有一个headless browser detection test测试以下:
- User-Agent是否包含字符串“HeadlessChrome”?
navigator.webdriver
未设置?window.chrome
未设置?- 浏览器是否跳过要求权限(如通知)?
- 浏览器插件不可用吗?
navigator.languages
未设置?
如果您的浏览器回答任何问题,那么您将无法通过测试。有关测试的更多信息,请查看此post,这是对"Detecting Chrome headless, new techniques"帖子的回复。
后一篇文章的作者还发布了另一个测试test(code),声称能够检测机器人和爬虫。它对浏览器属性执行各种测试,并生成浏览器的指纹。
网站完成的其他“软”测试可能包括鼠标移动,滚动行为,IP地址等。我怀疑你会发现很多关于这些信息的测试,因为这基本上是一个猫捉老鼠的游戏。
以上是关于无头浏览器检测的主要内容,如果未能解决你的问题,请参考以下文章