Я пытаюсь придумать JavaScript-обфускатор, чтобы уменьшить вероятность спама в электронных письмах, перечисленных на веб-сайте. Сейчас у меня есть обфускатор, основанный на JavaScript, который использует комбинацию HTML-кодирования и JavaScript для прозрачного преобразования обфускации в обычный почтовый ящик.
Что я делаю:
Отформатируйте "mailto:" часть href в ссылках, кодируемых как HTML:
mailto:
Я также кодирую электронное письмо, заменяя знак @
знаком (a)
, так что письмо читает что-то вроде:
stackoverflow(a)example.com
Затем я использую JavaScript для расшифровки всех ссылок mailto, которые имеют этот знак (a)
в письме и конвертируют их в @
при загрузке страницы.
Это работает довольно хорошо. Для людей, использующих браузеры с включенным JavaScript, они видят, что все работает нормально. Для людей без включенного JavaScript каждый почтовый клиент, которого я знаю, будет считать адрес электронной почты недействительным, однако пользователь должен иметь возможность сделать вывод о том, что необходимо для исправления символа.
Мне было интересно, было ли лучше (менее навязчивый (или, в лучшем случае, не очень навязчивый), но более устойчивый к спамеру) способ обфускации писем на веб-странице.
Как и при любом типе обфускации, если человек или компьютер могут легко обезвредить его, тогда спамер может легко сделать то же самое. Из-за этого я не ожидаю безупречной обфускации, однако мне было любопытно посмотреть, какие другие предложения были там. Поиск Google не показал никаких решений, которые я считаю лучшими, чем мое текущее решение. Мне было интересно, есть ли другие хорошие альтернативы.