Можно ли отключить статус devtool при использовании Puppeteer? - PullRequest
0 голосов
/ 28 апреля 2018

возможно ли отключить статус devtool при использовании Puppeteer? потому что есть некоторые сайты, которые защищают свои страницы от проверки с помощью devtool, поэтому к нему нельзя получить доступ с помощью Puppeteer.

Я открыл этот URL https://jsbin.com/cecuzeb/edit?js,output, чтобы проверить статус 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');

есть ли способ отключить этот статус?

1 Ответ

0 голосов
/ 28 апреля 2018

Ответ, приведенный ниже, является скорее теоретической версией для предотвращения обнаружения обычными средствами разработки с использованием метода /./.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 = () => {};
    
...