首页 >后端开发 >Python教程 >网站可以检测 Selenium WebDriver 的使用情况吗?如何避免?

网站可以检测 Selenium WebDriver 的使用情况吗?如何避免?

DDD
DDD原创
2024-12-18 13:11:22792浏览

Can Websites Detect Selenium WebDriver Usage, and How Can It Be Avoided?

网站可以通过 Chromedriver 检测 Selenium 的使用吗?

尽管声称应该没有办法检测 Webdriver 的使用,一些网站开发了识别硒存在的机制。

检测技术

网站脚本可以检查通常由 Selenium 设置的特定 JavaScript 变量或对象,例如:

  • 文档变量: $cdc_和 $wdc_
  • 窗口对象变量: _phantom, __selenium_evaluate
  • 自定义 JavaScript 函数: callPhantom、callSelenium

案例研究:Stubhub

Stubhub,用于例如,使用包含有关浏览器的信息的指纹,插件和系统设置。虽然指纹在 Selenium 和 Chrome 中看起来相同,但会发生阻塞。

解决方案

根据接受的答案,逃避检测的关键是删除 $cdc_ 作为一个文档变量。这可以通过修改chromedriver源码,重新编译,修改一个函数,将$cdc_赋给不同的名字来实现。

其他方法

  • 打开带有十六进制编辑器的 chromedriver.exe 并删除 $cdc_
  • 的所有实例绕过检测使用 Puppeteer 或 Headless Chrome 等无头浏览器的脚本
  • 使用 Selenium Stealth 等服务禁用或修改可疑变量
  • 实现自定义反检测或隐形技术

以上是网站可以检测 Selenium WebDriver 的使用情况吗?如何避免?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn