La détection des "stealth" web crawlers

Quelles options sont là pour détecter le web crawlers qui ne veulent pas être détecté?

(Je sais que la liste des techniques de détection permettra à la smart stealth-robot programmeur pour faire une meilleure araignée, mais je ne pense pas que nous serons jamais en mesure de bloquer les smart stealth-robots de toute façon, que ceux qui font des erreurs.)

Je ne parle pas de la belle robots comme googlebot, Yahoo! Slurp.
Je considère qu'un bot bien si c':

  1. identifie lui-même comme un bot dans la chaîne de l'agent utilisateur
  2. lit robots.txt (et obéit)

Je parle de la mauvais robots, se cachant derrière commun des agents utilisateur, à l'aide de ma bande passante et de ne jamais me donner quelque chose en retour.

Il y a quelques trappes de visite qui peut être construit liste mise à jour (merci Chris, gs):

  1. Ajout d'un répertoire seulement une liste (marqué comme pas) dans le robots.txt,
  2. L'ajout de liens invisibles (éventuellement marqués comme ?),
    • style="display: none;" sur le lien ou conteneur parent
    • placé sous un autre élément avec un z-index supérieur
  3. détecter ceux qui ne comprennent pas la CaPiTaLiSaTioN,
  4. détecter qui essaie de poster des réponses, mais toujours échouer le Captcha.
  5. détecter les requêtes GET ou POST-seulement les ressources
  6. détecter l'intervalle entre les demandes
  7. détecter ordre des pages demandées
  8. de détecter (systématiquement) les requêtes https ressources sur http
  9. détecter qui ne demande pas de fichier d'image (ce qui, en combinaison avec une liste des user-agents de l'image connue capable navigateurs fonctionne étonnamment nice)

Certains pièges déclenchés par les deux "bons" et "mauvais" bots.
vous pouvez combiner ces avec une liste blanche:

  1. Déclencher un piège
  2. Il demande robots.txt?
  3. Il fais pas déclencher un piège parce qu'il a obéi à robots.txt

Une autre chose importante ici est:

Veuillez considérer les aveugles à l'aide d'un des lecteurs d'écran: donner aux gens un moyen de vous contacter, ou de résoudre un (sans image) le Captcha pour continuer à naviguer.

Quelles méthodes sont là pour détecter automatiquement le web robots en essayant de masquer eux-mêmes comme des humains normaux visiteurs.

Mise à jour

La question n'est pas: Comment puis-je attraper tous les chenilles. La question est: Comment puis-je maximiser les chances de détecter un robot.

Certaines araignées sont vraiment bons, et fait analyser et de comprendre le langage html, xhtml, css, javascript, VB script, etc...

Je n'ai pas d'illusions: je ne vais pas être en mesure de les battre.

Vous serait toutefois être surpris de voir comment stupide certains robots sont. Avec le meilleur exemple de la bêtise (à mon avis) d'être: le casting de tous les Url de minuscules avant de leur demander.

Et puis il y a tout un tas de robots qui sont tout simplement "pas assez bon" pour éviter les diverses trappes.