Protéger ses adresses e-mail contre des robots spammer avec javascript

C’est un des plus vieux problème de la création web, et personne n’y a encore trouvé de solution réellement satisfaisante : comment protéger son adresse E-mail des robots spammeurs ?

En effet, si pour faciliter le contact avec les utilisateurs de votre site vous mettez un lien sur votre adresse E-mail, vous risquez très rapidement de retrouver votre boite aux lettres électronique submergée de message indésirables vous proposant nombre d’affaire juteuses (et boite de viagra ;o) ).

Cela est (généralement) du a des logiciel qui parcourent les sites Internet web et récupèrent les adresses mails qu’il découvre dans les pages. Ces aspirateurs d’adresses de courriel ont pour objectif de créer des bases de données qui seront ensuite revendues à des entreprises souhaitant faire du marketing par E-mail.

Il y a quelques mois, une dépêche AFP estimait ces courriels non sollicités à plus de 90% du nombre des mails émis quotidiennement.

La seule méthode efficace pour protéger son adresse électronique est donc de ne pas la diffuser. cependant cette méthode radicale a un revers : si vous ne difusez pas votre adresse e-mail, on ne peut pas vous contacter par e-mail (ceci est une lapalissade presque parfaite).

Plusieurs méthodes existent pour protéger une adresse e-mail présente sur un site :

  • Remplacer le l’affichage du lien e-mail par une image. c’est très efficace (l’adresse n’apparait pas en clair dans le corps de la page web) mais cela oblige vos visiteurs à la retaper (ce qui peut être sujet a erreurs de copie si l’adresse est longue).
  • Utiliser un formulaire de contact, cependant ceux ci peuvent aussi parfois être spammés, et nécessite que vous ayez accès à un système de script serveur pour traiter le contenu du formulaire et vous le faire parvenir.
  • Modifier l’adresse E-mail de telle manière qu’il soit plus difficile à un robot sniffeur de reconnaitre l’adresse e-mail mais qu’elle puisse être facilement modifiée par un utilisateur humain.

Généralement, pour retrouver les E-mail dans une page, la plus grande part des robots aspirateurs de mails recherche le caractère @ et capture le texte qui l’entoure : par exemple si l’adresse e-mail qu’on veut protéger est monadresse@exemple.com, le lien se présente ainsi :

et qu’on  remplace l’arobase par un texte, les robots ne la verront pas pas exemple (attention certains robots sont beaucoup plus subtils, mais une méthode de ce genre permet quand même de limiter beaucoup le nombre de mails capturés). par exemple si on remplace @ par (remplace_le_contenu_entre_parenthese_par_une_arobase) (oui je sais c’est un peut long mais c’est pour l’exemple, le robot ne verra pas l’arobase (et ne capturera donc pas l’adresse), par contre l’utilisateur remplacera le texte de motif par le @.

Bien sur il y a un risque que l’utilisateur ne comprennent pas le texte de motif que vous utilisez, on peut allors utiliser une petite fonction javascript qui va remplacer le motif de remplacement par une arobase. ainsi, le robot spameur (qui ne connais pas obligatoirement le javascript ) ne pourra pas lire l’adresse, mais l’utilisation sera entièrement transparente pour l’utilisateur.

voici le code d’exemple :

entre les balises <head> </head>ajouter le script suivant :

remplacer la balise par :

enfin remplacer vos adresse mail par

comment ça fonctionne  ?

après le chargement de la page, à chaque fois passe sa souris sur un lien contenant un e-mail codé, celui ci est décodé, ce qui permet a l’utilisateur, quand il clique, d’utiliser le lien comme un lien e-mail normal. bien sur cette mèthode ne réduit pas à néant le risque de spam, mais évite déja que votre adresse ne soit capturée par des spameurs amateurs ;o)

Aller plus loin :

le site ccm explique comment il protège ses utilisateurs du spam ici
le site Arobase.org regorge de conseils sur l’utilisation du mail ici

 

Protéger ses adresses e-mail contre des robots spammer avec javascript

10 commentaires sur “Protéger ses adresses e-mail contre des robots spammer avec javascript

  • 3 mai 2011 à 11 h 32 min
    Permalink

    @dadavidov : oui, c'est une bonne idée, mais si tu as plusieurs adresses à protéger sur une page ça peut être laborieux.

    Répondre
  • 3 mai 2011 à 18 h 01 min
    Permalink

    @dada : et puis je suis pas sur que ce soit top accessible ? comment fais tu ?

    Répondre
  • 3 mai 2011 à 20 h 51 min
    Permalink

    @dada : elle est toute moisie ton astuce ;oD !

    ça marche pas non plus sur pc avec firefox c'est pas le même protocole, un mail c'est un mailto, tiny url un http:// je pense que ça ne doit marcher qu'avec chrome ;o)

    Répondre
  • 4 mai 2011 à 16 h 38 min
    Permalink

    et bien moi j'utilise un formulaire qui fonctionne parfaitement, je l'avais trouvé là http://kontactr.com/

    comme ça je ne suis jamais spammé et mon adresse mail n'est pas publique

    Répondre
  • 4 mai 2011 à 16 h 59 min
    Permalink

    @Melclalex

    Merci pour le lien et le site, ça a l'air super pratique !

    @lolobobo

    Désolé ;-)))

    Répondre
  • 4 mai 2011 à 18 h 57 min
    Permalink

    @melclalex : oui mais c'est un formulaire mon article parle des liens mailto:

    mais le formulaire est une bonne solution

    Répondre
  • 5 mai 2011 à 0 h 23 min
    Permalink

    oui Laurent j'ai bien vu et lu mais justement pour éviter le mailto j'ai préféré opter pour un formulaire qui selon moi est plus sûr et discret.

    Répondre

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Merci de faire ce calcul pour valider votre commentaire *

Bear