Migliorare come rileviamo e segnaliamo i probabili crawler nei tuoi dati di traffico

La dashboard di amministrazione ora è in grado di identificare il probabile traffico crawler — bot automatizzati e scraper che utilizzano il JavaScript di browser reali ma non sono visitatori umani — e separare queste visualizzazioni di pagina dai numeri del vostro traffico genuino.

In questo argomento, condivideremo il nostro approccio all’identificazione di questo traffico e come potete attivare questa funzionalità già oggi.

:microscope: Cosa è cambiato

Discourse ha sempre filtrato i Crawler che si identificano con user agent bot standard (Googlebot, ad esempio) in una categoria separata dei dati sul traffico del sito. Ma il traffico automatizzato moderno è più subdolo: esegue un browser completo, esegue JavaScript e si integra nei vostri dati sulle visualizzazioni di pagina come se fosse una visita reale. Gli amministratori avrebbero visto picchi di traffico nelle visualizzazioni di pagina Anonime che si sono rivelati essere scraper, o conteggi dei visitatori gonfiati da bot di intelligenza artificiale — senza alcun modo di distinguere tra loro e il vero traffico umano anonimo (cioè non autenticato).

Questo aggiornamento aggiunge una categoria Probabili crawler ai dati sul traffico del vostro sito. Quando il rilevamento migliorato dei crawler è abilitato, le visualizzazioni di pagina che i nostri euristici segnalano come probabilmente automatizzate vengono separate, in modo che i numeri del traffico umano siano più accurati.

Come funziona il rilevamento

Il sistema assegna un punteggio a ogni visualizzazione di pagina del browser utilizzando una serie di segnali comportamentali:

  • User agent di automazione — lo user agent nomina esplicitamente un browser headless o uno strumento di automazione (HeadlessChrome, Playwright, Puppeteer, Selenium, PhantomJS, jsdom)
  • ASN del crawler verificato — il numero di sistema autonomo dell’IP appartiene a una rete di crawler nota (Baidu, Ahrefs, Yandex, Internet Archive, ecc.)
  • ASN del datacenter — l’IP si trova nello spazio degli indirizzi di un grande provider cloud o di hosting
  • Velocità — l’IP + user agent genera un numero insolitamente elevato di visualizzazioni di pagina all’ora
  • Navigazione rapida — il divario mediano tra le visualizzazioni di pagina è inferiore a 5 secondi
  • Rotazione delle sessioni — molte sessioni brevi (per lo più di una sola pagina) dallo stesso IP + user agent
  • Mancanza di coinvolgimento — nessuna interazione umana registrata (movimento del mouse, pressioni dei tasti, scorrimento) per la sessione e le sue vicine. Questo segnale ha più peso per il traffico anonimo che per quello autenticato.
  • Rapporto referrer errati — la maggior parte delle visualizzazioni di pagina arrivano senza referrer o con uno esterno, suggerendo un accesso diretto all’URL piuttosto che una navigazione attraverso il sito
  • Singola richiesta diretta — una singola visualizzazione di pagina senza coinvolgimento e senza referrer; il punteggio è più alto se l’URL contiene un parametro locale
  • Rotazione rapida dell’IP — più IP utilizzati all’interno di una singola sessione, con un ciclo più rapido di quanto farebbe un umano
  • Chromium obsoleto — una versione di Chrome obsoleta senza segnali di coinvolgimento
  • Traffico distribuito — alcuni crawler ruotano gli indirizzi IP e avviano una nuova sessione per quasi ogni visualizzazione di pagina. Ora cerchiamo schemi nelle visite anonime che condividono lo user agent e sia la rete sia una fonte di referral esterna

I punteggi provenienti da più segnali si sommano; quando una visualizzazione di pagina presenta una certa quantità dei segnali sopra elencati, viene classificata come probabile crawler.

:gear: Attivare il rilevamento migliorato dei crawler nella vostra community

Per ora, questa è considerata una modifica sperimentale. Stiamo ancora perfezionando gli euristici di rilevamento e accogliamo con favore il feedback.

Per attivarla, andate alla pagina delle Modifiche imminenti nella vostra area di amministrazione e individuate la voce Rilevamento migliorato dei crawler. Aggiornate il campo Abilitato per… per includere il vostro sito.

Una volta abilitata, la sezione Traffico del sito della dashboard di amministrazione mostrerà i probabili crawler come categoria separata.

:warning: Note importanti:

  • Questa non è una scienza perfetta e continueremo a perfezionare i nostri euristici nel tempo. Tuttavia, non eseguiremo il backfill man mano che aggiorneremo questi calcoli.
  • Classificare una visualizzazione di pagina come probabile crawler non nega né limita la velocità della richiesta.
  • Le visualizzazioni di pagina dei probabili crawler sono escluse dai referrer, dai paesi e da altre suddivisioni del traffico — nello stesso modo in cui vengono gestiti oggi i crawler noti.
  • Le modifiche alle regole di rilevamento non rielaborano automaticamente tutto il traffico storico.

:mega: Cosa ne pensate?

Adoreremmo il vostro feedback — specialmente da parte delle community che hanno notato schemi di traffico insoliti o picchi inspiegabili. I numeri sembrano corretti per il vostro sito? Ci sono visite segnalate che vi sembrano utenti reali? Condividete ciò che osservate in questo argomento.

21 Mi Piace

Suona bene, ma considera anche gli utenti connessi per quei segnali?

1 Mi Piace

I crawler probabili verranno ancora conteggiati nel limite mensile di visualizzazioni di pagina? :slightly_smiling_face:

1 Mi Piace

Ho dimenticato di modificare l’URL di qualcosa che ho incollato mentre utilizzavo un modello, e su un forum in costruzione ho registrato un picco del 35.000%.

Ho ancora il compito in sospeso di installare un piccolo modello locale per ripulire eventuali riferimenti reali a ciò su cui sto lavorando.

È fantastico avere questa opzione come secondo filtro. Grazie per averla creata.

È una buona domanda, e una su cui non abbiamo ancora preso una decisione: prevediamo di dover affinare i nostri modelli di rilevamento dei crawler e, poiché questa è pensata come una facoltativa, non sappiamo ancora se e in che modo avrà un impatto sui limiti di visualizzazione.

Prenderemo in considerazione la questione internamente e ti aggiornerò!

3 Mi Piace

Grazie per lo sforzo profuso. È probabile che la possibilità di intraprendere un’azione correttiva una volta soddisfatti dell’algoritmo di rilevamento sia inclusa nella roadmap?

2 Mi Piace

Sarebbe ottimo se potessimo ottenere un elenco degli user agent identificati, o considerati probabili bot/crawler.

Ciò sarebbe utile per poterli aggiungere ai gruppi di blocco o di limitazione della frequenza.

3 Mi Piace

Sì, cerchiamo anche di rilevare le automazioni da parte di utenti connessi. Su Meta, abbiamo trovato alcuni “utenti” con livello di fiducia 0 che stavano scansionando il sito.

1 Mi Piace

La sfida è che i “probabili crawler” utilizzano spesso user agent legittimi. A volte, la versione del browser sembra piuttosto vecchia, ma non è un segnale abbastanza forte da considerarla un probabile bot. È per questo che raccogliamo così tante metriche e cerchiamo di combinarle per stimare la probabilità.

Quando il crawler si presenta onestamente tramite un user agent come Bingbot o Googlebot, finisce direttamente nella categoria “crawler”.

1 Mi Piace

Infatti. Con le statistiche che il team di discourse poteva estrarre dal backend, tendeva a trattarsi di user agent più oscuri, spesso con un aumento a breve termine dei pattern di accesso, il che ci permetteva di eliminarne alcuni dall’elenco senza impattare sugli utenti.

Non è una scienza esatta. La possibilità di mappare questi dati su specifiche aree geografiche migliorerebbe probabilmente la risoluzione nella loro gestione.

2 Mi Piace