記錄最新puppeteer刪除navigator.webdriver


 

webdriver標記是反爬一定在檢測的屬性

 

目前資料都是

 ignoreDefaultArgs: ['--enable-automation']

或

 Object.defineProperty(navigator, 'webdriver', {
      get: () => undefined,
 })

 

實測這兩種方法已經無效,webdriver還在,只是值為undefined,通過 webdriver in  navigator   或者 navigator.hasOwnProperty("webdriver") 都是為true

 

最終解決方案:

 

await page.evaluateOnNewDocument(() => {
    const newProto = navigator.__proto__;
    delete newProto.webdriver;
    navigator.__proto__ = newProto;
  });

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM