Há três formas de um script mover um mouse por uma página: teleportar o cursor direto ao seu alvo, acoplar um humanizador que desenha uma curva suave, ou pagar por uma API comercial que entrega movimento "humanlike" pronto para usar. O modelo de cursor de desktop da cside, cursor_v2, pega as três pelo jeito como o mouse se move. Este artigo traz as taxas de captura, no desktop, de ponta a ponta.
Nada disso depende do navegador. Seja a automação rodando em Playwright puro, uma biblioteca humanizadora como WindMouse ou NaturalMouse, ou a API BrowserQL da browserless.io, o modelo pontua a mesma coisa: o movimento que uma mão real deixa para trás, que um script ainda não consegue reproduzir. Este é o complemento de um artigo anterior sobre pegar bots pelo jeito como se movem; aqui o foco é Playwright e browserless.io em específico.
A versão curta:
- Um script de Playwright que teleporta o cursor, sem nenhuma humanização, é pego 98,2% das vezes, a frio.
- Acople um humanizador pronto (curvas bezier) ou uma biblioteca baseada em física como WindMouse ou NaturalMouse, e a taxa de captura quase não se move: de 97% a 100%.
- A API BrowserQL da browserless.io entrega um modo "humanlike" com trajetórias de mouse curvadas e eventos de clique confiáveis, pronto para usar. Cerca de 70% do tráfego de browserless contra o qual testamos já roda com ele ativado.
- Curvar uma trajetória não é o mesmo que se mover como uma pessoa. O cursor_v2 marca 100% das sessões "humanlike" de browserless ao vivo, a uma taxa de falsos positivos abaixo de 1% em humanos reais.
Seja como for que você gere a trajetória
Playwright puro costuma ser exatamente o que parece: você chama mouse.move(x, y) e o cursor salta direto ao alvo sem trajetória no meio. É o caso mais barato, e é tão fácil de pegar quanto parece.
Um humanizador muda a forma. Em vez de um salto, o cursor segue uma curva bezier suave. Bibliotecas baseadas em física vão além: WindMouse e NaturalMouse são construídas para imitar a aceleração, o overshoot e as pequenas correções que uma mão real faz. Cada uma foi pontuada no desktop, de ponta a ponta, pelo modelo implantado.
| Abordagem | n | AUC | Recall @ FPR ≤ 1% | Pego |
|---|---|---|---|---|
| Teleporte em linha reta (sem humanizador) | 500 | 0,995 | 98,6% | 98,2% |
| Humanizador de curva bezier (reservado) | 500 | 0,999 | 99,6% | 99,6% |
| Humanizador bezier quantizado (reservado) | 500 | 0,999 | 99,6% | 99,6% |
| WindMouse (baseado em física) | 499 | 1,000 | 99,4% | 97,0% |
| NaturalMouse (baseado em física) | 500 | 1,000 | 100,0% | 100,0% |
Controle: 160 movimentos humanos reais, reservados, pontuados pelo mesmo pipeline. Zero marcados.
Curvar a trajetória muda como ela parece, não o que uma mão de fato deixa. Cada abordagem aqui continua acima de 97% pego, no desktop, só pelo movimento.
Então a browserless.io aparece
A browserless.io vende Chromium headless remoto como uma API. Você conduz um navegador real por uma linguagem de consulta chamada BrowserQL sem rodar o Chromium você mesmo. É um produto legítimo com usos legítimos, e também é uma forma popular de rodar bots.
O BrowserQL entrega um modo "humanlike". Ative-o e cliques e rolagens disparam como eventos confiáveis, e o mouse é roteado por trajetórias curvadas, com forma humana, em vez de teleportar de A para B. No tráfego contra o qual testamos, cerca de 70% já roda com o modo "humanlike" ativado. As pessoas já estão tentando isso.
Curvado não é humano
A forma de uma trajetória é metade do que uma mão deixa, não tudo. O cursor_v2, o mesmo modelo que marcou um agente LLM conduzindo o navegador furtivo Camoufox em um teste anterior, não avalia um movimento só pela forma. Seja o que mais ele avalie, o modo "humanlike" não tocou nisso. Uma trajetória curvada é uma versão com aparência melhor do mesmo teleporte.
Ao vivo, sobre tráfego real capturado da browserless.io com o modo "humanlike" ativado, o cursor_v2 pega tudo. Em uma comparação controlada de 54 sessões reais capturadas de browserless contra 529 humanas reais, o sistema combinado pegou as 54 e marcou cerca de 1% dos humanos.
| Métrica | Resultado |
|---|---|
| Sessões "humanlike" de browserless ao vivo pegas | 100% |
| Recall dentro da distribuição @ FPR ≤ 1% | 99,5% |
| Taxa de falsos positivos humanos no limiar | 0,6% |

A browserless.io fez bem a geometria: trajetórias curvadas, eventos de clique confiáveis. Pego mesmo assim, porque a forma de uma trajetória nunca foi a história toda. A mesma independência percorre a pilha de dois estágios em pegar bots que não querem ser pegos.
O que isso pega, seja qual for o navegador
Nada disso depende de como o navegador foi automatizado. Playwright, Puppeteer, uma sessão CDP crua, a API da browserless.io: o modelo nunca vê nada disso. Ele vê se havia uma mão real no mouse, e um script, por melhor que finja a forma de uma trajetória, ainda não é uma.
Se você quer especificamente barrar o Playwright, como bloquear o Playwright cobre o lado do fingerprint; o movimento é a camada que aguenta quando o fingerprint está limpo. Para o conjunto de sinais mais amplo por trás da automação furtiva, veja como detectar agentes de IA e navegadores furtivos.
Os limites, ditos com clareza
Um relatório de segurança só vale a leitura se for honesto sobre suas bordas.
A taxa de falsos positivos é baixa, não zero. No limiar implantado, a taxa de falsos positivos humanos é de 0,6%, e na comparação cerca de 1% dos humanos reais foram marcados. Isso é um custo real, e é por isso que a produção espera vários movimentos pontuados como bot em sequência antes de agir, em vez de reagir a um único gesto estranho.
O resultado de browserless é medido contra uma amostra finita de sessões humanas reais, não contra todo cursor que existirá. Leia o 100% como aprovado para esta captura e este controle, e a alavanca aberta como a amplitude de movimento humano real para calibrar.
Estes números são a visão por movimento, antes do debounce de produção. Eles também omitem de propósito o que o modelo realmente observa, seus limiares, e qualquer coisa que um autor de bots pudesse usar para se ajustar e contorná-lo.
Como a cside se encaixa
A cside dá a você visibilidade sobre cada script, requisição e sessão que toca seu site, além do sinal comportamental para distinguir usuários reais da automação escondida entre eles. O modelo de cursor é uma camada de uma pilha de detecção que já separa humanos, bots bons e agentes maliciosos na camada do navegador, depois que as pistas estáticas foram falsificadas.
Conheça a detecção de agentes de IA da cside





