小编Kis*_*Gut的帖子

如何使用 Puppeteer 设置、更改或阻止时区(系统时间)?

  • 操作系统:基于 Windows 10 Pro x64 的 PC
  • 节点-v:v8.12.0
  • npm 列表 puppeteer: `-- puppeteer@1.9.0

我试过这个:

puppeteer.launch({
  env: {
    TZ: 'Australia/Melbourne',
    ...process.env
  }
});
Run Code Online (Sandbox Code Playgroud)

别为我工作。whoer.net 看到我的实际系统时间。

编辑:有关https://github.com/nodejs/node/issues/4230的一些信息

此代码在 Linux 上运行良好,但在 Windows 上不起作用:

process.env.TZ = 'UTC';

console.log(new Date());
Run Code Online (Sandbox Code Playgroud)

在 Windows 上,我从操作系统中看到时区。

javascript google-chrome node.js google-chrome-devtools puppeteer

5
推荐指数
2
解决办法
7201
查看次数

如何使用 puppeteer 禁用 webRTC 本地 IP 泄漏?

我试过:

const browser = await puppeteer.launch({args: ['--enable-webrtc-stun-origin=false', '--enforce-webrtc-ip-permission-check=false']});
Run Code Online (Sandbox Code Playgroud)

但这是行不通的。接下来我尝试:

const targets = await browser.targets();
const backgroundPageTarget = targets.find(target => target.type() === 'background_page');
const backgroundPage = await backgroundPageTarget.page();
await backgroundPage.evaluateevaluateOnNewDocument(() => {
  chrome.privacy.network.webRTCIPHandlingPolicy.set({
    value: "default_public_interface_only"
  });
});
Run Code Online (Sandbox Code Playgroud)

但得到:

类型错误:无法读取未定义的属性“页面”

编辑:需要 {headless: true} 的解决方案。

node.js google-chrome-headless puppeteer

1
推荐指数
1
解决办法
3845
查看次数