Volver al Blog
Identidad

Configuracion de zona horaria, locale e idioma en BotBrowser

Aprende a configurar zona horaria, locale e idioma con los flags CLI de BotBrowser para una identidad de navegador consistente.

Por que importa la consistencia geografica

Tu navegador expone informacion de zona horaria, locale e idioma a traves de APIs JavaScript y headers HTTP. Estas tres propiedades forman la capa geografica de la identidad del navegador y deben alinearse con la ubicacion de tu proxy.

Flags CLI de BotBrowser

FlagPropositoEjemplo
--bot-config-timezoneEstablecer zona horaria IANAAmerica/New_York
--bot-config-localeEstablecer locale del navegadoren-US
--bot-config-languagesEstablecer preferencias de idiomaen-US,en
--bot-config-locationEstablecer coordenadas de geolocalizacion40.7128,-74.0060

Ejemplo con 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();
})();

Configuracion 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();
}

Mejores practicas

  1. Usar nombres de zona horaria IANA, no offsets UTC.
  2. Establecer idiomas en orden de prioridad. Incluir ingles como idioma secundario es realista.
  3. Coincidir coordenadas con la ciudad del proxy, no con una direccion exacta.
  4. Mantener locale y zona horaria en la misma region.
  5. Probar la configuracion visitando un sitio de verificacion de huella digital.

Lectura adicional

#timezone#locale#language#identity#geolocation