Huella digital personalizada
Introducción
La huella digital del navegador utiliza la información de configuración de su navegador y dispositivo para crear una “huella digital” casi única, que puede utilizarse 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 scraping. Ofrecemos capacidades de personalización profunda para las huellas digitales del navegador, como parámetros principales como el agente de usuario del navegador, la zona horaria, el idioma y la resolución de la pantalla. La funcionalidad se puede ampliar a través de parámetros de inicio personalizados. Esto es adecuado para escenarios como la gestión de cuentas múltiples, la recopilación de datos y la protección de la privacidad, utilizando el navegador Chromium autoconstruido de scrapeless para evitar completamente la detección. De forma predeterminada, el uso de nuestro servicio Scraping Browser generará una huella digital aleatoria para cada sesión.
Capacidades principales y limitaciones
Control del agente de usuario
- Capacidad: Admite la personalización de la cadena de agente de usuario en los encabezados de solicitud HTTP, permitiendo la definición de la versión del motor del navegador y el tipo de sistema operativo.
- Limitación: Actualmente no se pueden modificar los detalles del motor de renderizado (por ejemplo, las funciones de renderizado de WebGL).
Asignación de la resolución de la pantalla
- Capacidad: Admite la personalización de los valores de retorno para
screen.width
yscreen.height
para simular los tamaños de pantalla de los dispositivos básicos (debe ajustarse a las relaciones de aspecto físicas). - Limitación: Actualmente no se puede falsificar la relación de píxeles del dispositivo (DPR) o las características de la pantalla Retina.
Bloqueo del atributo de plataforma
- Capacidad: Permite establecer un valor de retorno fijo para
navigator.platform
(solo se admiten Windows/macOS/Linux), lo que afecta a la lógica de detección de funciones del navegador. - Limitación: Actualmente no se puede modificar el número de versión del sistema operativo o la información de la arquitectura del hardware.
Otras limitaciones:
Esta función solo admite ajustes limitados a los parámetros estandarizados expuestos de forma nativa por el navegador. No implica la huella digital a nivel de hardware ni el enmascaramiento de comportamiento avanzado.
Escenarios de aplicación
- Aislamiento básico de cuentas múltiples: Evite la detección simple de asociación de cuentas diferenciando el agente de usuario y la resolución de la pantalla.
- Recopilación de datos ligera: Simule un entorno de navegador convencional (Windows + Chrome) para evitar las estrategias básicas anti-scraping del sitio web de destino (por ejemplo, lista negra de agentes de usuario).
- Pruebas de compatibilidad: Verifique la lógica de renderizado básica del sitio web en diferentes sistemas operativos (Windows/macOS) y tamaños de pantalla.
Guía de operación
Descripción de los parámetros de huella digital
Nombre del parámetro | Tipo | Descripción |
---|---|---|
userAgent | string | Define la cadena de agente de usuario en el encabezado de solicitud HTTP del navegador, que contiene información de identificación clave 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 del contenido y la funcionalidad. Valor predeterminado: Sigue al navegador |
platform | enum | Especifica el valor de retorno de 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 funciones y el juicio de habilitación de las funciones relacionadas con el sistema. Valor predeterminado: Windows |
screen | object | Define los parámetros de características físicas del dispositivo de visualización informados por el navegador, asignados directamente al objeto JavaScript window.screen . |
screen.width | number | Ancho físico de la pantalla (píxeles), asignado a la propiedad screen.width , que afecta a las consultas de medios y al diseño adaptable. Valor predeterminado: Sigue a la huella digital aleatoria, valor mínimo 640. |
screen.height | number | Altura física de la pantalla (píxeles), asignada a la propiedad screen.height , que determina las características de resolución del dispositivo junto con el ancho. Valor predeterminado: Sigue a la huella digital aleatoria, valor mínimo 480. |
localization | object | Controla la configuración del entorno de localización del navegador, incluidos los parámetros de idioma, región y zona horaria, que afectan al formato de visualización y al comportamiento de localización del contenido. |
localization.timezone | string | Un identificador de zona horaria que se ajusta al formato de la base de datos de zonas horarias de IANA (por ejemplo, “Asia/Shanghai”), que controla el comportamiento de la zona horaria predeterminada de los objetos de fecha de JavaScript y la salida de Intl.DateTimeFormat , que es un componente clave de la huella digital de la zona horaria. Valor predeterminado: America/New_York |
localization.languages | [string] | La lista de prioridad de idioma admitida por el navegador, asignada a la propiedad navigator.languages y al encabezado de solicitud HTTP Accept-Language , que determina la lógica de selección de idioma del contenido del sitio web. Valor predeterminado: “es”, “es-ES” |
userAgent
Tipo: string
Descripción: Define la cadena de agente de usuario en el encabezado de solicitud HTTP del navegador, que contiene información de identificación clave 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 del contenido y la funcionalidad.
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
platform
Tipo: enum
Descripción: Especifica el valor de retorno de la propiedad 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 el juicio de habilitación de las funciones relacionadas con el sistema.
Valores aceptables de ejemplo:
Valor | Descripción |
---|---|
”Windows” | Sistema operativo Windows, valor predeterminado |
”macOS” | Sistema operativo macOS |
”Linux” | Sistema operativo Linux |
screen
Tipo: object
Descripción: Define los parámetros de características físicas del dispositivo de visualización informados por el navegador, asignados directamente al objeto JavaScript window.screen
.
screen.width: Ancho físico de la pantalla (píxeles), que afecta a las consultas de medios y al diseño adaptable, valor mínimo 640. screen.height: Altura física de la pantalla (píxeles), que determina las características de resolución del dispositivo junto con el ancho, valor mínimo 480.
Valores de ejemplo:
width | height |
---|---|
1920 | 1080 |
1366 | 768 |
1280 | 720 |
768 | 1280 |
localization
Tipo: object
Descripción: Controla la configuración del entorno de localización del navegador, incluidos los parámetros de idioma, región y zona horaria, que afectan al formato de visualización y al comportamiento de localización del contenido.
localization.timezone: Un identificador de zona horaria que se ajusta al formato de la base de datos de zonas horarias de IANA, que controla el comportamiento de la zona horaria predeterminada de los objetos de fecha de JavaScript y la salida de Intl.DateTimeFormat
, que es un componente clave de la huella digital de la zona horaria.
Valores de ejemplo:
America/New_York
Asia/Shanghai
Europe/London
localization.languages: La lista de prioridad de idioma admitida por el navegador, asignada a la propiedad navigator.languages
y al encabezado de solicitud HTTP Accept-Language
, que determina la lógica de selección de 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
Ejemplo de código
const puppeteer =require('puppeteer-core');
// 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',
}
}
const query = new URLSearchParams({
token: 'APIKey',// required
session_ttl: 180,
proxy_country: 'ANY',
fingerprint: encodeURIComponent(JSON.stringify(fingerprint)),
});
const connectionURL = `wss://browser.scrapeless.com/browser?${query.toString()}`;
(async () => {
const browser = await puppeteer.connect({browserWSEndpoint: connectionURL});
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
Abogamos por una personalización responsable de la huella digital:
- Solo para escenarios legalmente autorizados (como la recopilación de cumplimiento de datos empresariales, pruebas de control de riesgos internos).
- Está prohibido utilizar huellas digitales falsificadas para participar en fraudes en línea o infringir la privacidad del usuario.