Scarnox · Blog

Huella digital del navegador explicada para scrapers

La huella digital del navegador consiste en identificar a un visitante por el conjunto de rasgos de su navegador, y no por una cookie ni por una cuenta. Los sitios la usan para reconocer visitantes que vuelven, detectar fraude y reconocer la automatización. Si haces scraping de la web, te la encontrarás. Esta guía explica qué se mide, por qué una sola incoherencia causa problemas y cómo mantener un perfil coherente y bien comportado para recopilar datos públicos. También explica los límites de lo que puede y debe hacer el ajuste de la huella digital.

De qué está hecha una huella digital

Ningún valor aislado identifica a un navegador por sí solo, pero muchos valores pequeños juntos a menudo sí. Entre las entradas habituales están:

Los scripts de huella digital combinan estos datos en un hash o una puntuación. Cuantas más señales estables e inusuales haya, más identificador será el resultado.

Por qué destaca una incoherencia

Un navegador real es internamente coherente. Su sistema operativo coincide con sus fuentes, su zona horaria coincide con su idioma y el tamaño de su pantalla coincide con el dispositivo en el que funciona. Los scrapers suelen romper esa coherencia sin pretenderlo:

Cada incoherencia es una señal pequeña. Juntas pueden pasar una petición de "visitante normal" a "necesita un análisis más detenido".

Paso 1: mide tu propia configuración

Puedes ver lo que una página aprende de tu cliente cargando una página de prueba de huella digital que controles, o una página de diagnóstico que ejecutes en local. Mira los valores y pregúntate si describen una máquina coherente. Este es un ejemplo mínimo con Playwright que imprime algunos de ellos:

from playwright.sync_api import sync_playwright

with sync_playwright() as p:
    browser = p.chromium.launch(headless=False)
    context = browser.new_context(locale="en-GB", timezone_id="Europe/London")
    page = context.new_page()
    page.goto("https://example.com")  # replace with a page you own
    print(page.evaluate("""() => ({
        language: navigator.language,
        timezone: Intl.DateTimeFormat().resolvedOptions().timeZone,
        platform: navigator.platform,
        viewport: [innerWidth, innerHeight]
    })"""))
    browser.close()

Paso 2: mantén una sola identidad por perfil

El hábito más útil es tratar cada identidad de scraping como un solo perfil. Dale un conjunto único de rasgos y mantenlos durante toda su vida:

Cambiar uno de estos valores en cada petición resulta más sospechoso que mantenerlos estables. La coherencia es lo que hace que un perfil parezca normal.

Paso 3: regula el perfil como lo haría un visitante

La huella digital es solo una entrada. Los sitios también vigilan la velocidad a la que un perfil recorre el sitio. Un perfil que carga doscientas páginas de producto en un minuto no es una persona, sea cual sea su huella. Reparte las peticiones, guarda los resultados en caché y detente cuando una página lo indique. La lista de comprobación para scrapear sin ser bloqueado trata el ritmo con más detalle.

Paso 4: conoce los límites

El ajuste de la huella digital no puede hacer que un perfil automatizado parezca una persona que no está allí. Los sitios que se apoyan en la huella digital suelen combinarla con límites de frecuencia, comprobaciones de cuenta y, a veces, un captcha. Cuando aparece un captcha, necesitas un token de un solver y no más ajustes de huella. El tipo de captcha en vivo en Scarnox es PopularCaptcha; la guía de PopularCaptcha en Python muestra la petición. Para tener el panorama completo de qué widgets existen, lee tipos de captcha explicados.

Y, más importante, evadir la huella digital no es una licencia para ignorar las reglas de un sitio. Si el titular ha restringido el acceso automatizado, lo correcto es parar, no hacer que tu perfil sea más difícil de notar. La huella digital también es un tema de privacidad. Algunos sitios la usan para seguir a personas entre visitas, y esa es una razón más para recopilar solo lo que tu proyecto necesita.

Scrapea de forma responsable

Dónde seguir leyendo

Si tu objetivo está detrás de una comprobación a nivel de navegador, empieza por la detección de navegadores headless, que cubre las señales específicas de los navegadores automatizados. Las páginas que necesitan JavaScript para mostrar su contenido se tratan en scrapear sitios con JavaScript.

Empieza con crédito de prueba gratis, sin tarjeta: crea una cuenta y prueba el flujo de PopularCaptcha contra una página que sea tuya. Para conocer las tarifas actuales, consulta la página de precios.

Próximos pasos