WebScript.Ru
C:\   главная  ::   о сайте  ::  каталог скриптов  ::  гнездо  ::  форум  ::   авторам  :: Новостройки ::   ХОСТИНГ  ::

|| разделы::
|| поиск по сайту::

|| реклама::
|| новости почтой::
Рассылки Subscribe.Ru ::



Новости сайта WebScript.Ru
Популярные статьи

Hot 5 Stories

|| рекомендуем::




No Spam-2


Прислал: Spectator [ 01.06.2001 @ 04:02 ]
Раздел:: [ Веб-технологии ]


Продолжаем заметку про спам.

Есть еще один способ бороться с роботами, собирающими 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. Добавления и багфиксы будут вот здесь. Ждите.


 :::::  VaV пишет 06.06.2001 @ 03:09 
но некоторые роботы выдирают e-mail с фактически сгенерированной страницы и исходный документ им не помеха
 :::::  Spectator пишет 06.06.2001 @ 03:11 
2VaV: вы сказали ба-альшую глупость.
 :::::  SiteMaker пишет 17.06.2001 @ 22:43 
Лучше бы этот скрипт поделить на 2 части:
В .js загнать описание функции, а ее уже вызвать из html-ки.
Вот тока непонятно, что тут нового?
 :::::  sinexec пишет 18.06.2001 @ 23:55 
Вообще, лучше всего CGI. Ни один враг не проберется! Если, конечно, сервер не взломает.
 :::::  DiM пишет 14.10.2003 @ 21:44 
опять же - если браузер поддерживает JS. Универсальнее все-таки Perl или PHP, или ...
Имя:
Email:
URL

Введите сумму двух чисел девять и одинн (девять+одинн=?)
Запомнить мою информацию

* Html запрещен* Ваш E-mail опубликован не будет.

Copyright © 2000-2001 WebScript.Ru nas@webscript.ru
Design © 2001 by Parallax Design Studio (aka Spectator.ru)
Все торговые марки и авторские права на эту страницу принадлежат их соответствующим владельцам.
Сгенерировано за: 0.0137260