Selenium 与 Chromedriver 已广泛用于自动化 Web 测试,但令人惊讶的是,一些网站可以检测到它的存在,尽管缺乏明显的自动化。本文研究了这些网站用于区分 Selenium 与合法浏览器的技术。
这些网站采用的检测机制涉及仔细检查仅在 Selenium 运行时才出现的预定义 JavaScript 变量。用过的。机器人检测脚本专门检查包含术语“selenium”或“webdriver”的窗口对象变量以及名为 $cdc_ 和 $wdc_ 的文档变量。
为了逃避检测,文档变量 $cdc_ 必须被消除。通过修改 chromedriver 源代码并将 $cdc_ 重命名为其他名称,可以消除机器人检测。
机器人检测网络通常利用各种技术来识别自动浏览器,包括:
虽然网站可以采用各种技术来检测 Selenium,但如果采取对策,这些检测方法可能会变得无效。通过了解bot检测的底层原理并修改相关源代码,用户可以成功伪装使用Selenium进行自动化Web测试。
以上是网站可以检测 Selenium WebDriver 以及如何避免?的详细内容。更多信息请关注PHP中文网其他相关文章!