Développement web et musiques électroniques

bcolin

Protéger son adresse email contre le spam

Il y a en permanence des spambots qui scrutent le contenu de nos pages web pour en relever les adresses mail. D'ailleurs, ce n'est pas bien dur à faire.

On le voit un peu partout, les webmasters emploient différentes astuces pour que la fameuse chaîne mailto:prenom.nom@gmail.fr n'apparaisse pas clairement dans le code source de la page.

Par exemple sur les Google Groups, l'adresse mail apparaît sous la forme preno...@gmail.fr : il faut cliquer dessus puis résoudre un captcha afin de la voir en entier.

Sachant que ces spambots se basent beaucoup sur la présence d'un caractère @ pour définir si une chaine est une adresse mail, on voit fleurir des adresses affichées en prenom DOT nom AT gmail DOT fr, ou encore plus parano, prenom DOT nom AT nospam gmail DOT fr, certains bots arrivant à détecter le premier cas.

Je vous propose la méthode suivante, que j'emploie depuis un moment et qui permet d'obtenir un vrai lien mailto:. Il s'agit d'employer Javascript pour réagir au clic sur le lien et définir l'adresse mailto que doit suivre le navigateur.

Il suffit de placer dans le HEAD de votre page web :

<script language="javascript">
 function mymailto(s1, s2) {
  window.location.href= 'mailto:' + s1 + '@' + s2;
 }
</script>

Ensuite, le lien mail, codé comme suit :

<a href="#" onclick="mymailto('bntcolin', 'gmail.com');" style="cursor:pointer;">Me contacter par mail</a>

Voici ce que cela donne :

Me contacter par mail

Enfin, l'évenement onclick peut être appliqué à d'autres balises, comme une image ou un div. Dans l'exemple ci-dessous, je combine un affichage de mon adresse mail par une image (avec une petite enveloppe pour troubler un éventuel OCR), avec un attribut ALT contenant mon adresse mail en toutes lettres (pour les navigateurs mobiles ou restreints), et la redirection du clic.

<div onclick="mymailto('bntcolin', 'gmail.com');" style="cursor:pointer;">
<a href="#"><img src="img/contact.gif" alt="bntcolin AT NOSPAM gmail DOT com" border="0" /></a>
</div>

Ce qui donne :

bntcolin AT NOSPAM gmail DOT com

Vous savez tout maintenant !

Powered by quedalle           Copier le contenu de ce blog sans le citer, c'est le Mal           re.bot           Citroulette