No Spam-2
Продолжаем заметку про спам.
Есть еще один способ бороться с роботами, собирающими email-адреса со страниц. Я даже удивлен, почему никто про него не вспомнил. Придется вспомнить мне.
JavaScript.
Как вы знаете (если знаете), javascript - это язык, который выполняется на стороне браузера, а не на стороне сервера, как, например, php. Поэтому сам скрипт находится в теле html-документа. На javascript'е есть такая функция - document.write(), которая выводит нужный текст в нужном месте. Например:
<script language=JavaScript> document.write('Это текст'); </script>
Результат работы скрипта: .
Но если мы заглянем в source этой страницы, то мы увидим не просто "Это текст", а яваскрипт, приведенный выше. Конечно, писать что-то вроде document.write('mailto:spectator@mail.ru') смысла нет, потому что робот все равно выцепит адрес, поэтому делаем примерно вот так:
<script language=JavaScript> document.write('<a href=mailto:'); document.write('spectator'+'%40'); document.write('mail.ru>мыло</a>'); </script>
Результат работы скрипта:
%40 - это то же самое, что и "@". Чтобы никто не догадался...
Тем не менее, если быть параноиком, можно предположить, что робот, собирающий адреса, "понимает" document.write. То, что он целиком понимает javascript - это навряд ли, повторюсь еще раз - javascript испольняется браузером в момент вывода html-я, однако если смотреть в "исходник" страницы (а именно туда роботы и смотрят), то там будет "запутанный" яваскрипт.
Тем не менее, запутать можно сильней. Для этого просто введем переменную. И назовем ее 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>
Дальше - дело техники. Как вставить в форум, гостевую книгу или еще куда-нибудь пару строчек на php, perl'е и прочем (зависит от вашего вкуса), чтобы скрипт сам из простого email-адреса делал вот такой java-скрипт, вы разберетесь сами...
p.s. Добавления и багфиксы будут вот здесь. Ждите.
|