Je dois détecter les informations sur mon site Web. J'ai essayé la détection basée sur les modèles de comportement, et il semble être prometteur, bien que relativement lourd de calcul.La façon de détecter le grattage Web
La base consiste à collecter des horodatages de demande de certains clients et à comparer leur comportement avec un modèle commun ou un modèle précalculé.
Pour être plus précis, je collectionne des intervalles de temps entre les requêtes en tableau, indexé par fonction du temps: limite
i = (integer) ln(interval + 1)/ln(N + 1) * N + 1
Y[i]++
X[i]++ for current client
où N est le temps (nombre), des intervalles supérieurs à N sont lâchés. Initialement, X et Y sont remplis de uns. Puis, après avoir obtenu un nombre suffisant d'entre eux en X et Y, il est temps de prendre une décision. Critères est le paramètre C:
C = sqrt(summ((X[i]/norm(X) - Y[i]/norm(Y))^2)/k)
où X représente certaines données client, Y sont des données communes, et la norme() est la fonction d'étalonnage, et k est le coefficient de normalisation, en fonction du type de norme(). Il existe 3 types:
norm(X) = summ(X)/count(X), k = 2
norm(X) = sqrt(summ(X[i]^2), k = 2
norm(X) = max(X[i]), k is square root of number of non-empty elements X
C est dans la gamme (0..1), 0 signifie qu'il n'y a pas d'écart de comportement et une déviation est max.
L'étalonnage du type 1 est préférable pour les demandes répétées, le type 2 pour la demande répétée avec peu d'intervalles, le type 3 pour les intervalles de requêtes non constants.
Qu'en pensez-vous? J'apprécierai si vous essayerez ceci sur vos services.
Juste "goûter" googlé au cas où il était un terme que je ne connaissais pas. Je suppose que vous devez vouloir dire "grattage"? –
@Martin - 'screen-scraping' a été sélectionné comme tag et j'ai donc modifié cela en fonction de cela. – slugster
Je dois juste dire: raclage existera toujours. À l'avenir, vous devriez au moins envisager un modèle d'entreprise adapté au 21ème siècle. – rook