您的位置: 网站首页> selenium爬虫> 当前文章

selenium启动特征有哪些?如何识别selenium爬虫

老董-我爱我家房产SEO2020-12-09168围观,128赞

  爬虫可以用selenium,但是网站要检测selenium还是有迹可循的,

  1、比如chromedriver的源码有个标志性的变量$cdc_xxxx,可以直接检测这个变量来识别是selenium。

  2、当浏览器被打开后,js就会给当前窗口一个window属性,这里面存放着各种"信息"。seleniium启动的浏览器也不列外。因此selenium驱动浏览器才有很多特征可以被识别,最简单的方式就是判断window.navigator.webdriver 的值,如果是true则为selenium启动的浏览器。如何去除这个特征请参考新版旧版谷歌浏览器去除window.navigator.webdriver 。

  3、第1点和第2点可以搞定的,而且如果搞定了,就可以过不少站的反爬。实际上这2点远远不够,selenium被干掉的方式太多了,可以看这里>>selenium反爬规避(给大家提示下:比如无头模式分辨率是800*600也可以作为一个特征被检测)。

  有1个网站可以专门测试selenium特征:https://bot.sannysoft.com/ (来源于青南大佬分享)。用正常浏览器打开然后再用selenium打开对比下即可知道。

  对于第2点,给大家补充下selenium的很多特征(这些特征因浏览器种类、因浏览器版本而已):

webdriver  
__driver_evaluate  
__webdriver_evaluate  
__selenium_evaluate  
__fxdriver_evaluate  
__driver_unwrapped  
__webdriver_unwrapped  
__selenium_unwrapped  
__fxdriver_unwrapped  
_Selenium_IDE_Recorder  
_selenium  
calledSelenium  
_WEBDRIVER_ELEM_CACHE  
ChromeDriverw  
driver-evaluate  
webdriver-evaluate  
selenium-evaluate  
webdriverCommand  
webdriver-evaluate-response  
__webdriverFunc  
__webdriver_script_fn  
__$webdriverAsyncExecutor  
__lastWatirAlert  
__lastWatirConfirm  
__lastWatirPrompt  
$chrome_asyncScriptInfo  
$cdc_asdjflasutopfhvcZLmcfl_ 

  总而言之要识别selenium只要在js里面判断一下这些特征即可,可以结合多个特征共同判断!只要知道selenium有这个特点,那么识别起来其实很轻松,一个正常的前端工程师就可以把反爬的事办了。如何规避这些特征呢?下一篇有介绍。

很赞哦!

python编程网提示:转载请注明来源www.python66.com。
有宝贵意见可添加站长微信(底部),获取技术资料请到公众号(底部)。同行交流请加群 python学习会

文章评论

    selenium启动特征有哪些?如何识别selenium爬虫文章写得不错,值得赞赏

站点信息

  • 网站程序:Laravel
  • 客服微信:a772483200