Вы сейчас здесь
«Облако» тэгов
link, small, tagless, tiny, 2003, big, 2008, 2010, январь, декабрь, сентябрь, 2001, 2004, 2002, август, март, апрель, июль, 2009, игры, октябрь, май, июнь, февраль, 2007, ноябрь, img, 2011, quote, wow, huge, блоги, кино, игровой дизайн, ребенок, половой вопрос, технологии, lytdybr, вебдев, фразы, живой журнал, жизнь, яндекс, язык, php, людишки, 2006, 2005, software, поисковики, video, inglish, 2000, смишно, диалоги, музыка, книги, культ личности, политика, дейтинг, интернет, 1999, rss, контент, flash, реклама, я, авторские проекты, next-gen mmo, прон, ореховые скорлупки, сми, 2012, js, программирование, fight club, register, социгры, спам, english reviews, iphone, потребление, американас, идеи, беллетристика, мое величие, usability, пидорасты, battle.net, lifestyle, starcraft 2, Тёма, соционика, spectator.ru, британские ученые, развитие, Масква, фото, бабло, литература, mobile, work, болкман, титаны, hard, hobius, mysql, интеллектуальный юмор, хостинг, blogowar.ru, графика, SEO, blogowar, magic, журналистика, злоба дня, религия, стартапы, social, tf2, браузеры, цитаты, gzip, warhammer, велосипед, киви, медикаментоз, общество, оговорки, html, воспитание, мифы, паранойа, письма в редакцию, учеба, 1998, mongodb, soft, soviet, twdnkumus, глянцевые журналы, монетизация, норкотики, сайты, сиськи, типографика, тьюринг, дизайн, железо, живут же люди, лолвут, плагиат, твиттер, еда, тренд, about, бабушки, вещи, видео, зомбоящик, игрушки, социопатия,
Персональное
об авторе и сайте
мойкруг (резюме)
на G+
порнотумблер (rss)
инстаграм (хипстерские фото)

facebook
twitter

skype: acerbial
gtalk: dmitry.smirnov


C любовью к людишкам™,
♥ 1998 - 2013.

powered by mongodb.



No Spam-2

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

Есть еще один способ бороться с роботами, собирающими email-адреса со страниц. Я даже удивлен, почему никто про него не вспомнил. Придется вспомнить мне.

JavaScript.

Как вы знаете (если знаете), javascript — это язык, который выполняется на стороне браузера, а не на стороне сервера, как, например, php. Поэтому сам скрипт находится в теле html-документа. На javascript’е есть такая функция — document.write(), которая выводит нужный текст в нужном месте. Например:

<script language=JavaScript> document.write(’Это текст’); </script>

Результат работы скрипта: .

Но если мы заглянем в source этой страницы, то мы увидим не просто «Это текст», а яваскрипт, приведенный выше. Конечно, писать что-то вроде document.write(’mailto:dmitry.smirnov@spectator.ru’) смысла нет, потому что робот все равно выцепит адрес, поэтому делаем примерно вот так:

<script language=JavaScript> document.write(’<a rel=nofollow href=http://spectator.ru/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 rel=nofollow href=http://spectator.ru/mailto:’+mailto+’>мыло</a>’ );
</SCRIPT>

Работает вот так:

Осталось вспомнить про тех, у кого javascript отключен. Есть и такие оригиналы.

<SCRIPT>
mailto=(’spectator’+’%40’+ ’mail.ru’);
document.write( ’<A rel=nofollow href=http://spectator.ru/mailto:’+mailto+’>мыло</a>’ );
</SCRIPT>
<NOSCRIPT>
Включите javascript, чтобы увидеть email
</NOSCRIPT>

Дальше — дело техники. Как вставить в форум, гостевую книгу или еще куда-нибудь пару строчек на php, perl’е и прочем (зависит от вашего вкуса), чтобы скрипт сам из простого email-адреса делал вот такой java-скрипт, вы разберетесь сами...

From: Konstantin Bekreyev (Ulyanovsk State University)
To: Spectator

Добрый день

Я конечно не особый специалист, но почему бы проблему не решать вот
так? :)

<?
$usermail=’user@domain.com’;
for ($i=0;$i<strlen($usermail);$i++)
{ $mailto.="&#".ord($usermail[$i])."; }
echo ’<a rel=nofollow href=http://spectator.ru/&#109;&#97;&#105;&#108;&#116;&#111;&#58;$mailto>$mailto</a>’;
?>

идея понятна? :) правда может можно и оптимизировать наверно...

IMHO мало кто будет по такой подстроке искать... :> А проблем с 
наличием или отсутствием javascript не будет...

---
With best regards, Konstantin V. Bekreyev
Ulyanovsk State University, Russia

В общем, идея в том, чтобы переводить символы в их «цифровые» аналоги, например это &#109;&#97;&#105;&#108;&#116;&#111;&#58 — то же самое, что и «mailto:»

Способ тоже хороший, только вот преобразовать их обратно в «нормальные» символы гораздо легче, чем javascript... Конечно, наверняка не все спамовые роботы это могут, то все-таки... «Продвинутые» — точно могут.

И еще один способ, весьма забавный:

<a rel=nofollow href=http://spectator.ru/mailto:obmanka@antispam.comonMouseOver="this.rel=nofollow href=http://spectator.ru/’mail’+’to:’+’spectator’+’@’+’mail’+’.ru’">E-Mail</a>

Работает вот так: E-Mail

0
Привет, Anonymous! Чтобы оставлять комментарии, надо авторизоваться.