Retour au Blog
Identité

Configuration du fuseau horaire, de la locale et de la langue dans BotBrowser

Decouvrez comment configurer le fuseau horaire, la locale et la langue avec les flags CLI de BotBrowser pour une identite de navigateur coherente.

Pourquoi la coherence geographique est importante

Votre navigateur expose des informations de fuseau horaire, locale et langue via les APIs JavaScript et les en-tetes HTTP. Ces trois proprietes forment la couche geographique de l'identite du navigateur et doivent s'aligner avec l'emplacement de votre proxy.

Flags CLI de BotBrowser

FlagObjectifExemple
--bot-config-timezoneDefinir le fuseau horaire IANAAmerica/New_York
--bot-config-localeDefinir la locale du navigateuren-US
--bot-config-languagesDefinir les preferences de langueen-US,en
--bot-config-locationDefinir les coordonnees de geolocalisation40.7128,-74.0060

Exemple Playwright

const { chromium } = require('playwright-core');

(async () => {
  const browser = await chromium.launch({
    executablePath: '/path/to/botbrowser/chrome',
    args: [
      '--bot-profile=/path/to/profile.enc',
      '--proxy-server=socks5://user:pass@us-east.proxy.example:1080',
      '--bot-config-timezone=America/New_York',
      '--bot-config-locale=en-US',
      '--bot-config-languages=en-US,en',
      '--bot-config-location=40.7128,-74.0060',
    ],
    headless: true,
  });

  const context = await browser.newContext();
  const page = await context.newPage();

  const tz = await page.evaluate(() =>
    Intl.DateTimeFormat().resolvedOptions().timeZone
  );
  console.log('Timezone:', tz); // America/New_York

  await browser.close();
})();

Configuration multi-region

const profiles = [
  {
    profile: '/profiles/de-user.enc',
    proxy: 'socks5://user:pass@de.proxy.example:1080',
    timezone: 'Europe/Berlin',
    locale: 'de-DE',
    languages: 'de-DE,de,en',
    location: '52.5200,13.4050',
  },
  {
    profile: '/profiles/jp-user.enc',
    proxy: 'socks5://user:pass@jp.proxy.example:1080',
    timezone: 'Asia/Tokyo',
    locale: 'ja-JP',
    languages: 'ja-JP,ja,en',
    location: '35.6762,139.6503',
  },
];

for (const cfg of profiles) {
  const browser = await chromium.launch({
    executablePath: '/path/to/botbrowser/chrome',
    args: [
      `--bot-profile=${cfg.profile}`,
      `--proxy-server=${cfg.proxy}`,
      `--bot-config-timezone=${cfg.timezone}`,
      `--bot-config-locale=${cfg.locale}`,
      `--bot-config-languages=${cfg.languages}`,
      `--bot-config-location=${cfg.location}`,
    ],
    headless: true,
  });
  await browser.close();
}

Bonnes pratiques

  1. Utilisez les noms de fuseau horaire IANA, pas les decalages UTC.
  2. Definissez les langues par ordre de priorite. Inclure l'anglais comme langue secondaire est realiste.
  3. Faites correspondre les coordonnees a la ville du proxy, pas a une adresse exacte.
  4. Gardez locale et fuseau horaire dans la meme region.
  5. Testez votre configuration en visitant un site de verification d'empreinte.

Lecture complementaire

#timezone#locale#language#identity#geolocation