要隐藏所有网站的信息,您必须使用不同设置的组合。这不仅限于以下内容:
因为每个网站都有自己的查找方法。仅更改时区并不意味着网站会认为您来自其他地方。
然而,以下代码对我完美地起作用了。
const puppeteer = require('puppeteer');
async function timeZoneChecker({ timeZone }) {
const launchConfig = {};
if (timeZone) {
launchConfig.env = {
TZ: timeZone,
...process.env,
};
}
const browser = await puppeteer.launch(launchConfig);
const page = await browser.newPage();
await page.goto('https://whoer.net/');
const detectedTimezone = await page.$eval('.ico-timesystem', e => e.parentNode.innerText);
await page.screenshot({ path: `screenshots/timeZone_${timeZone.replace('/', '-')}.png`, fullPage: true });
await browser.close();
return { timeZone, detectedTimezone };
}
Promise.all([
timeZoneChecker({ timeZone: 'Australia/Melbourne' }),
timeZoneChecker({ timeZone: 'Asia/Singapore' }),
]).then(console.log);
结果:
➜ change-timezone node app/timezone.js
[ { timeZone: 'Australia/Melbourne',
detectedTimezone: 'Sun Oct 28 2018 22:44:35 GMT+1100 (Australian Eastern Daylight Time)' },
{ timeZone: 'Asia/Singapore',
detectedTimezone: 'Sun Oct 28 2018 19:44:36 GMT+0800 (Singapore Standard Time)' } ]
澳大利亚/墨尔本
吧? - Md. Abu Taher