记录一下使用puppeteer遇到反爬情况时的设置处理
# 启动设置
const browser = await puppeteer.launch({
headless: true,
args: [
'--no-sandbox',
'--disable-setuid-sandbox',
'--disable-blink-features=AutomationControlled',
],
dumpio: false,
});
# webdriver
// webdriver
await page.evaluateOnNewDocument(() => {
const newProto = navigator.__proto__;
delete newProto.webdriver; //删除 navigator.webdriver字段
navigator.__proto__ = newProto;
});
# window.chrome
// 添加 window.chrome字段,向内部填充一些值
await page.evaluateOnNewDocument(() => {
window.chrome = {
};
window.chrome.app = {
InstallState: 'hehe