Files
mv2_simple_crx/server/services/puppeteer/puppeteer_stealth.js
张成 6d75720a89 1
2026-03-18 16:28:26 +08:00

28 lines
942 B
JavaScript

import puppeteer_extra from 'puppeteer-extra';
import stealth_plugin from 'puppeteer-extra-plugin-stealth';
// 全局只注册一次插件
let inited = false;
export function get_stealth_puppeteer(puppeteer_core) {
if (!inited) {
puppeteer_extra.use(stealth_plugin());
inited = true;
}
// 复用 puppeteer 的 Chromium/Chrome 绑定(保持你现有的 executablePath 等能力)
puppeteer_extra.puppeteer = puppeteer_core;
return puppeteer_extra;
}
export async function apply_page_stealth_defaults(page) {
// 这些属于通用的轻量“指纹一致性”设置,不会影响你现有业务
await page.setViewport({ width: 1366, height: 768, deviceScaleFactor: 1 });
await page.setUserAgent(
'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36'
);
await page.setExtraHTTPHeaders({
'Accept-Language': 'zh-CN,zh;q=0.9,en;q=0.8'
});
}