Google chrome devtools 使用木偶师时是否可以关闭devtool状态?

Google chrome devtools 使用木偶师时是否可以关闭devtool状态?,google-chrome-devtools,puppeteer,google-chrome-headless,Google Chrome Devtools,Puppeteer,Google Chrome Headless,使用木偶师时是否可以关闭devtool状态? 因为有些网站使用devtool保护其页面不被检查,所以不能使用puppeter访问 我打开此url以检查devtool状态 const browser = await puppeteer.launch({ headless: false, devtools: false, }); const page = await browser.newPage(); await page.goto('https://jsbin.com/cecuzeb/e

使用木偶师时是否可以关闭devtool状态? 因为有些网站使用devtool保护其页面不被检查,所以不能使用puppeter访问

我打开此url以检查devtool状态

const browser = await puppeteer.launch({
  headless: false,
  devtools: false,
});
const page = await browser.newPage();
await page.goto('https://jsbin.com/cecuzeb/edit?js,output');

有什么方法可以关闭此状态吗?

下面的答案是一个理论版本,用于防止正常开发工具使用
/./.toString
方法进行检测,该方法基于提供的关于主要问题的jsbin链接

  • 停止页面的所有间隔。因为大多数devtool检测库只是运行间隔检查,所以我们可以停止它们

    (function(w){w = w || window; var i = w.setInterval(function(){},100000); while(i>=0) { w.clearInterval(i--); }})(/*window*/);
    
  • 停止
    console.clear
    ,如果没有运行
    console.clear
    ,则在未经许可的情况下清除控制台不会有问题。同时停止打印“%c”或任何其他清除字符

    console.clear = console.log = console.warn = console.error = () => {};