DocumentaciónNavegador y CrawlAgent BrowserHuellas digitales personalizadas

Huella digital personalizada

Introducción

La huella digital del navegador utiliza la información de configuración del navegador y del dispositivo para crear una “huella digital digital” casi única, que puede emplearse para rastrear su actividad en línea incluso sin cookies. La buena noticia es que la configuración de la huella digital es opcional en el navegador de extracción de datos. Ofrecemos capacidades profundas de personalización de huellas digitales del navegador, como parámetros clave como el agente de usuario del navegador, zona horaria, idioma y resolución de pantalla. La funcionalidad puede ampliarse mediante parámetros personalizados de inicio. Esto es adecuado para escenarios como la gestión de múltiples cuentas, recolección de datos y protección de la privacidad, utilizando el navegador Chromium propio de scrapeless para evitar completamente la detección. De forma predeterminada, el uso de nuestro servicio Agent Browser generará una huella digital aleatoria para cada sesión.

Capacidades y limitaciones principales

Control del User-Agent

  • Capacidad: Admite la personalización de la cadena User-Agent en los encabezados de solicitud HTTP, permitiendo definir la versión del motor del navegador y el tipo de sistema operativo.
  • Limitación: Actualmente no es posible modificar los detalles del motor de renderizado (por ejemplo, características de renderizado WebGL).

Mapeo de resolución de pantalla

  • Capacidad: Admite la personalización de los valores devueltos por screen.width y screen.height para simular tamaños básicos de pantalla de dispositivo (deben cumplir con las proporciones físicas reales).
  • Limitación: Actualmente no es posible falsificar la relación de píxeles del dispositivo (DPR) ni las características de pantalla Retina.

Bloqueo de atributos de plataforma

  • Capacidad: Permite establecer un valor fijo para navigator.platform (solo se admiten Windows/macOS/Linux), lo cual afecta la lógica de detección de características del navegador.
  • Limitación: Actualmente no es posible modificar el número de versión del sistema operativo ni la información de arquitectura de hardware.

Otras limitaciones:

Esta función solo admite ajustes limitados a parámetros estandarizados expuestos nativamente por el navegador. No implica huellas digitales a nivel de hardware ni enmascaramiento conductual avanzado.

Escenarios de aplicación

  • Aislamiento básico de múltiples cuentas: Evitar la detección simple de asociación de cuentas mediante la diferenciación del User-Agent y la resolución de pantalla.
  • Recopilación ligera de datos: Simular un entorno de navegador común (Windows + Chrome) para sortear las estrategias anti-extracción básicas del sitio web objetivo (por ejemplo, lista negra de User-Agent).
  • Pruebas de compatibilidad: Verificar la lógica básica de renderizado del sitio web bajo diferentes sistemas operativos (Windows/macOS) y tamaños de pantalla.

Guía de operación

Descripción de parámetros de huella digital

Nombre del parámetroTipoDescripción
userAgentstringDefine la cadena User-Agent en el encabezado HTTP del navegador, que contiene información clave de identificación como el motor del navegador, el número de versión y el sistema operativo. Los sitios web utilizan este valor para identificar el entorno del cliente, lo que afecta la adaptación de contenido y funcionalidad. Valor predeterminado: Sigue el navegador
platformenumEspecifica el valor devuelto por la propiedad JavaScript navigator.platform , que indica el tipo de sistema operativo del entorno de ejecución. Los valores opcionales son “Windows”, “macOS” o “Linux”. Este parámetro se utilizará para la detección de características y la evaluación de activación de funciones relacionadas con el sistema. Valor predeterminado: Windows
screenobjectDefine los parámetros de características físicas del dispositivo de visualización informados por el navegador, mapeados directamente al objeto JavaScript window.screen .
screen.widthnumberAncho físico de la pantalla (píxeles), mapeado a la propiedad screen.width , afecta las consultas multimedia y el diseño adaptable. Valor predeterminado: Sigue la huella digital aleatoria, valor mínimo 640.
screen.heightnumberAltura física de la pantalla (píxeles), mapeado a la propiedad screen.height , determina junto con el ancho las características de resolución del dispositivo. Valor predeterminado: Sigue la huella digital aleatoria, valor mínimo 480.
localizationobjectControla la configuración del entorno de localización del navegador, incluyendo parámetros de idioma, región y zona horaria, lo que afecta el formato de visualización y el comportamiento de localización del contenido.
localization.basedOnIpbooleanSi se debe establecer automáticamente la zona horaria y los idiomas según la IP.
localization.timezonestringUn identificador de zona horaria conforme al formato de la base de datos de zonas horarias IANA (por ejemplo, “Asia/Shanghai”), que controla el comportamiento predeterminado de las zonas horarias de los objetos JavaScript Date y la salida de Intl.DateTimeFormat , siendo un componente clave de la huella digital de zona horaria. Valor predeterminado: America/New_York
localization.languages[cadena]Lista de prioridad de idiomas admitidos por el navegador, mapeada a la propiedad navigator.languages y al encabezado de solicitud HTTP Accept-Language , que determina la lógica de selección del idioma del contenido del sitio web. Valor predeterminado: “en”, “en-US”
argsobjectEjecutar el navegador con modificadores de línea de comandos (por ejemplo, --window-size, --proxy-bypass-list, etc., más información). Tenga en cuenta que los siguientes argumentos no son compatibles: --load-extension, --user-data-dir, --fonts-dir, --remote-debugging-port

userAgent

Tipo: string Descripción: Define la cadena User-Agent en el encabezado HTTP del navegador, que contiene información clave de identificación como el motor del navegador, el número de versión y el sistema operativo. Los sitios web utilizan este valor para identificar el entorno del cliente, afectando la adaptación de contenido y funcionalidad. Puede personalizar cualquier userAgent.

Valores de ejemplo:

  • Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/132.0.6834.83 Safari/537.36
  • Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/132.0.6834.83 Safari/537.36

plataforma

Tipo: enum Descripción: Especifica el valor devuelto por la propiedad de JavaScript navigator.platform , que indica el tipo de sistema operativo del entorno de ejecución. Este parámetro se utilizará para la detección de funciones y la evaluación de activación de funciones relacionadas con el sistema.

Ejemplo de valores aceptables:

ValorDescripción
”Windows”Sistema operativo Windows, valor predeterminado
”macOS”Sistema operativo macOS
”Linux”Sistema operativo Linux

pantalla

Tipo: object Descripción: Define los parámetros de las características físicas del dispositivo de visualización informados por el navegador, mapeados directamente al objeto de JavaScript window.screen .

screen.width: Ancho físico de la pantalla (píxeles), afecta a las consultas multimedia y al diseño adaptable, valor mínimo 640. screen.height: Altura física de la pantalla (píxeles), determina junto con el ancho las características de resolución del dispositivo, valor mínimo 480.

Valores de ejemplo:

widthaltura
19201080
1366768
1280720
7681280

localización

Tipo: object Descripción: Controla la configuración del entorno de localización del navegador, incluyendo parámetros de idioma, región y zona horaria, afectando al formato de visualización y al comportamiento de localización del contenido.

localization.basedOnIp: Indica si se debe establecer automáticamente la zona horaria y los idiomas según la dirección IP.

localization.timezone: Un identificador de zona horaria conforme al formato de la base de datos de zonas horarias IANA, que controla el comportamiento predeterminado de las zonas horarias de los objetos de fecha de JavaScript y la salida de Intl.DateTimeFormat , componente clave de la huella digital de zona horaria.

Valores de ejemplo:

  • America/New_York
  • Asia/Shanghai
  • Europe/London

localization.languages: Lista de prioridad de idiomas soportados por el navegador, mapeada a la propiedad de navigator.languages y al encabezado de solicitud HTTP Accept-Language , que determina la lógica de selección del idioma del contenido del sitio web.

Valores de ejemplo:

  • ["fr-FR", "en-US", "zh-CN"]
  • ["en-US", "es-ES", "de-DE"]

Referencia: lista de zonas horarias de la base de datos tz


args

Tipo: object Descripción: Ejecutar el navegador con opciones de línea de comandos, haga clic para obtener más información. Tenga en cuenta que no se admiten los siguientes argumentos: --load-extension, --user-data-dir, --fonts-dir, --remote-debugging-port

Valores de ejemplo:

  • omitir proxy: '--proxy-bypass-list': 'example.com'
  • establecer tamaño de ventana: '--window-size': '1280,1024', se recomienda establecerlo igual que la huella digital screen

Código de ejemplo

const { ScrapelessClient } = require('@scrapeless-ai/sdk');
const puppeteer =require('puppeteer-core');
const client = new ScrapelessClient({ apiKey: 'API Key' });
 
// custom browser fingerprint
const fingerprint = {
    userAgent: 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/134.1.2.3 Safari/537.36',
    platform: 'Windows',
    screen: {
        width: 1280, height: 1024
    },
    localization: {
        languages: ['zh-HK', 'en-US', 'en'], timezone: 'Asia/Hong_Kong',
    },
    args: {
        '--proxy-bypass-list': 'example.com',
        '--window-size': '1280,1024' // set window size as the same as the screen fingerprint
    }
}
 
// Create browser session and get WebSocket endpoint
const { browserWSEndpoint } = client.browser.create({
    sessionName: 'sdk_test',
    sessionTTL: 180,
    proxyCountry: 'US',
    sessionRecording: true,
    fingerprint,
});
 
(async () => {
    const browser = await puppeteer.connect({browserWSEndpoint});
    const page = await browser.newPage();
    await page.goto('https://www.scrapeless.com');
    const info = await page.evaluate(() => {
        return {
            screen: {
                width:screen.width,
                height:screen.height,
            },
            userAgent:navigator.userAgent,
            timeZone: Intl.DateTimeFormat().resolvedOptions().timeZone,
            languages:navigator.languages
        };
    });
    console.log(info);
 
    await browser.close();
})();

Declaración ética

Promovemos la personalización responsable de huellas digitales:

  • Únicamente para escenarios legalmente autorizados (como la recopilación de datos empresariales conforme a normativas, pruebas internas de control de riesgos).
  • Está prohibido utilizar huellas digitales falsificadas para realizar fraudes en línea o vulnerar la privacidad del usuario.