Источник: http://spectator.ru/
Продолжаем заметку про спам.
Есть еще один способ бороться с роботами, собирающими
JavaScript.
Как вы знаете (если знаете), javascript — это язык, который
выполняется на стороне браузера, а не на стороне сервера, как,
например, php. Поэтому сам скрипт находится в теле
<script language=JavaScript> document.write(’Это текст’); </script>
Результат работы скрипта: .
Но если мы заглянем в source этой страницы, то мы увидим не просто
«Это текст», а яваскрипт, приведенный выше. Конечно, писать
<script language=JavaScript> document.write(’<a href=mailto:’); document.write(’spectator’+’%40’); document.write(’mail.ru>мыло</a>’); </script>
Результат работы скрипта:
%40 — это то же самое, что и «@». Чтобы никто не догадался…
Тем не менее, если быть параноиком, можно предположить, что робот,
собирающий адреса, «понимает» document.write. То, что он целиком понимает
javascript — это навряд ли, повторюсь еще раз — javascript
испольняется браузером в момент вывода
Тем не менее, запутать можно сильней. Для этого просто введем переменную. И назовем ее mailto, чтобы еще больше запутать.
<SCRIPT>
mailto=(’spectator’+’%40’+
’mail.ru’);
document.write( ’<A
href=mailto:’+mailto+’>мыло</a>’ );
</SCRIPT>
Работает вот так:
Осталось вспомнить про тех, у кого javascript отключен. Есть и такие оригиналы.
<SCRIPT>
mailto=(’spectator’+’%40’+
’mail.ru’);
document.write( ’<A
href=mailto:’+mailto+’>мыло</a>’
);
</SCRIPT>
<NOSCRIPT>
Включите javascript, чтобы
увидеть email
</NOSCRIPT>
Дальше — дело техники. Как вставить в форум, гостевую книгу
или еще
From: Konstantin Bekreyev Добрый день
Я конечно не особый специалист, но почему бы проблему не
решать вот <? идея понятна? :) правда может можно и оптимизировать наверно…
IMHO мало кто будет по такой подстроке искать… :> А проблем
с
To: Spectator
так? :)
$usermail=’user@domain.com’;
for
($i=0;$i<strlen($usermail);$i++)
{
$mailto.="&#".ord($usermail[$i])."; }
echo ’<a
href=mailto:$mailto >$mailto</a>’;
?>
наличием или отсутствием javascript не будет…
With best regards, Konstantin V.
Bekreyev
Ulyanovsk State University, Russia
В общем, идея в том, чтобы переводить символы в их «цифровые» аналоги, например это mailto: — то же самое, что и «mailto:»
Способ тоже хороший, только вот преобразовать их обратно
в «нормальные» символы гораздо легче, чем javascript… Конечно,
наверняка не все спамовые роботы это могут, то
И еще один способ, весьма забавный:
<a href=mailto:obmanka@antispam.comonMouseOver= "this.href=’mail’+’to:’+’spectator’+’@’+’mail’+’.ru’">E-Mail</a>
Работает вот так: E-Mail