2007-01 Html: Ukrywanie adresu e-mail na www przed spamerami

Ukrywanie adresu e-mail na www przed spamerami

Wstęp.

Umieszczając adres e-mail jawnie na swojej stronie www bądź na forum jesteśmy narzarzeni na to iż jakiś robot,bot,spambot go odnajdzie i będzie wysyłać nam spam.
Można się przed tym zabespieczyć odpowiednio zapisując adres e-mail by był czytelny dla człowieka a nie czytelny dla robota.
Jest kilka metod jak można to zrobić.

Metody "Ręczne"

Wystarczy zapisać na www dares e-mail jako:

Jak chcesz się ze mną skontaktować
to pisz na
mojmail (o tym za chwile) domena.pl
W miejsce "(o tym za chwile)" podstaw małpę.
To ochrona przed spamerami, przepraszam za kłopot.

Można stworzyć odpowiedni obrazek ( pamiętaj o stylach takich jak "align: center" sprawić by się lepiej wtopił w tekst.)
Niestety te najprostsze (np. mail_obfuscation_test_mailcom.jpg ) są odczytywalne przez boty :(. Mają wbudowane czytniki OCR i rozpoznają litery.
Dlatego dobrze jest obrazek zaszumić a literki poprzesówać i użyć różnych czcionek.
( plik przykładowy w formacie programu GIMP )

Oto kilka przykładów generatorów automatycznych:

Przykładowy obrazek Wygeneraowany automatycznie przez
mail_obfuscation_test_gmail.png http://services.nexodyne.com/email/index.php
mail_obfuscation_test_mailcom.jpg http://digitalcolony.com/02/maskemail/inc/genEmailMask.asp

A oto zrobiony własnoręcznie w programie GIMP:
mail_obfuscator_image_grzegorz_wierzowiecki.png

Jeszcze przykłady innych generatorów:

Metody z HTML

Bazujące na specyfikacji samego najrdzenniejszego html , zamieniają znaki na ich kody ujęte w &#...; .
Przykłady Email Obfuscator i Email Harvester Robots, Spam and Email Obfuscation. Jakkolwiek nieco bardziej rozubdowane roboty z tym radzą bez problemu.

Metody z HTML i CSS

Bardziej zaawansowane użycie HTML-a (/xHTML-a) i arkuszy CSS może pomóc w zrobieniu kodu trudnym do odczytania dla bota a widocznym bez problemu na ekarnie.

Na http://verplant.org/obfumail.shtml znalazłem +/- taką metodę:
1. Bierzemy maila

username@domain.org

2. Wrzucamy to w spana i dalemy classę
<span class="email">username@domain.org</span>

3. Wrzucamy elementy zaszumiające i ustawiamy w kodzie CSS by były niewidoczne (np. poprzez display albo rozmiar…)
span.email span { display: none; }
<span class="email">username@<span>removeme.</span>domain.org</span>

JavaScript

Są metody oparte na JavaScript jak ta:

<script language="JavaScript" type="text/javascript">
<!-- w metody zaproponowanej przez Pawła F. Rożenka na grupie news:pl.news.mordplik // End -->
<!-- //Begin
document.write("<a href=\"mailto:slawomir.wiech+error501"+String.fromCharCode(64));
document.write("gmail.com\">Mail do mnie.<\/a>");
// End -->
</script>

Lecz takie zwykłe metody część spambotów obchodzi gdyż potrafi interpretować kod javascript… ale ….
bez instrukcji warunkowych ( wystarczy 7 i już ma 100 kombinacji do sprawdzenia).
W związku z czym wstarczy zrobić nieco bardziej skomplikowaną funkcję i już jest zabespieczone :).

linki
http://whttp://www.hcidata.info/obfuscate-email-address.htmww.hcidata.info/obfuscate-email-address.htm
http://www.meandeviation.com/utils/obfuscate/
http://w2.syronex.com/jmr/safemailto/

Linki

O ile nie zaznaczono inaczej, treść tej strony objęta jest licencją Creative Commons Attribution-ShareAlike 3.0 License