На 100% правильный способ проверки адресов электронной почты

—> Email valid — Проверка существования email —>

Инструмент позволяет проверить доступность почтового сервера получателя и возможность доставки электронных сообщений в указанный почтовый ящик.

Обратите внимание, что не все почтовые сервисы отвечают на наши запросы, поэтому, мы не можем гарантировать 100% точности получаемых результатов.

Механизм работы:

  1. Выясняем почтовые сервера домена.
  2. Подключаемся к каждому почтовому серверу и проверяем наличие на нем указанного email.

Использование:

Заполните поле “email для проверки” и нажмите кнопку “Запуск”.

Трактовка результата:

  1. Все почтовые сервера домена сообщили, что email доступен: email доступен в почтовом домене.
  2. Все почтовые сервера домена сообщили, что email недоступен: email не доступен в почтовом домене.
  3. Часть почтовых серверов домена сообщили, что email доступен, а часть — что нет. Это означает, что часть почтовых серверов, сообщивших, что email на них недоступен:
    • либо неисправны,
    • либо не используются для получения сообщений (используются только для отправки),
    • либо на них используются спам-фильтры, блокирующие ответ нашему сервису.

25 января 2019 – 00:50

Низкая активность подписчиков — одна из больных тем для email-маркетологов. Причин масса: неинтересный контент, банальные темы писем или непривлекательный дизайн. Но самая тривиальная причина, от которой не застрахован никто, — несуществующие адреса.

Зачем проверять email на существование

Проверять валидность адреса — то есть существование и возможность отправлять на него письма — полезно, если вы хотите:

  1. Снизить процент жалоб на спам, возвратов и ошибок доставки.
  2. Избегать спам-ловушек и не попадать в чёрные списки.
  3. Повысить репутацию в сервисе рассылок.
  4. Сократить затраты на отправку рассылок.

Валидация адресов — способ значительно улучшить показатели, по сути ничего не меняя в email-стратегии. Как часто стоит проводить проверку, читайте в статье о чистке базы подписчиков.

Как невалидные email-адреса появляются в базе

Самый очевидный источник невалидных адресов — купленная база подписчиков. В честно собранной базе предпосылки обычно таковы:

1. Чаще всего невалидный адрес вводит сам пользователь. Например, он не вспомнил точное написание, вставил лишнюю букву или пропустил нужную.

Для примера возьмем пользователя по имени Виталий. Его адрес — vitaly@example.com. С английским у Виталия не очень, и при подписке на рассылку он добавил букву i и написал vitaliy@example.com.

А теперь представьте, что vitaliy@example.com — email другого Виталия. Он начинает получать ваши письма и скорее всего отправляет их в спам.

2. Если у вас старая база, в ней могут быть удалённые или заблокированные адреса.

3. Бывают случаи, когда люди вводят при регистрации email из случайного набора букв. В некоторых случаях это позволяет получить доступ к закрытым материалам (раздаткам, исследованиям и так далее), не «засветив» собственный адрес. Если вы не используете double opt-in, ваша репутация пострадает.

4. Конкуренты могут «бомбить» форму подписки ботами или спам-ловушками, чтобы подпортить статистику. Такое случается, хотя и редко.

Способы проверки существования email

Есть по меньшей мере три способа понять, ввёл ли подписчик реальный email. У каждого есть и плюсы, и минусы. Выбор за вами.

Онлайн-сервисы

Подходят, если у вас небольшая база. Работают элементарно: вы пишете адрес, нажимаете кнопку «Проверить» и тут же получаете ответ. Вот несколько неплохих сервисов:

  • 2IP;
  • Smart-IP;
  • HTMLWeb.

Плюсы: регистрация не нужна, моментальный результат.

Минусы: есть лимит попыток, иногда нужно вводить капчу. Не подходят для проверки адреса с корпоративным доменом. В этом случае проверяют скорее существование самого домена, а имя пользователя пропускают любое:

Коммерческие валидаторы

Их удобно использовать, если вы планируете массовые рассылки, настраиваете автоворонку продаж и просто хотите, чтобы валидация проходила автоматически.

Для проверки можно периодически загружать файл со списком адресов или настроить интеграцию с сервисом рассылок в режиме реального времени. Второй вариант позволяет оперативно проверить почтовый ящик на существование, как только он попадает в базу.

Вот список популярных валидаторов:

  • Mailvalidator;
  • BriteVerify;
  • ePochta Verifier;
  • DaData.

Плюсы: много настроек, интеграция с сайтом и сервисом рассылок, подробная статистика. Проверяют не только существование email, но и его репутацию.

Минусы: нужна регистрация, ограниченные возможности в бесплатных тарифах.

Вот как выглядит результат проверки базы в Mailvalidator:

С помощью кода на сайте

Когда пользователь вводит email, код на сайте проверяет корректность синтаксиса (есть ли «@», нет ли пробелов или запрещённых символов). Например, это можно сделать с помощью регулярных выражений на Python.

Вот как это реализовали на сайте Arzamas.academy:

Плюсы: пользователь сразу видит, что допустил ошибку, а вы не получаете очевидно несуществующий адрес в базу.

Минусы. Такая проверка «спасёт», когда пользователь не переключил раскладку клавиатуры или вместо email ввёл своё имя. А если он сделал опечатку или ради шутки ввёл vasya_pupkin@gmail.com — код это пропустит.

Заключение

Самый достоверный способ проверить, существует ли email, — отправить на него письмо. Но не пренебрегайте сервисами для валидации: они избавят от очевидно сомнительных адресов. А остальные «мёртвые души» объявятся уже после отправки первого письма. Радует, что после первичной валидации их окажется гораздо меньше, чем могло быть.

Стоит отметить, что сейчас email-маркетологам доступны сервисы для лидогенерации, которые не пропускают невалидные адреса в базу. Например, LeadPlan проверяет их на соответствие стандартам IETF с помощью специальных регулярных выражений. Попробовать сервис можно бесплатно.

Но все равно не забывайте о double opt-in, или двухэтапном подтверждении подписки. Это удобный способ отправлять письма только на реальные адреса. Если адрес попал к вам по ошибке, человек просто не будет подтверждать подписку, а вы не станете отправлять ему рассылку. Вот пример письма с подтверждением подписки от EmailSoldiers.

comments powered by HyperComments

Автор оригинала: David Gilbertson
Поздравляю. C сегодняшнего дня вы никогда не будете тратить время, подбирая самое оптимальное регулярное выражение для проверки адреса электронной почты. И вы никогда больше не отклоните адрес, который к вашему удивлению оказался действительным. Хитрость в том, чтобы сразу определить значение слова «действительный». Мы разработчики — технические ребята, так что наиболее логичным будет проверить на соответствие официальным критериям. Вот некоторые примеры валидных адресов email, которые соответствуют критериям.

en.wikipedia.org/wiki/Email_address#Valid_email_addresses Вышеупомянутый пример проверки с помощью regex во многом игнорирует реальность. Вместо этого я полагаю, что нам нужно задать два вопроса:

  1. Понимает ли пользователь, что от него требуется ввести адрес электронной почты в это поле?
  2. Правильно ли он ввёл свой адрес в поле?

Если у вас хорошо заметная форма с подписью «email» и пользователь где-то в этой форме ввёл символ ‘@’, то будет безопасно предположить, что ответ на первый вопрос положительный. Это легко. Далее мы хотим проверить, что пользователь правильно ввёл свой адрес электронной почты. Невозможно. Важно, чтобы вы согласились со мной в данном тезисе: это невозможно. Я знаю, что вы думаете. «Но это поможет, верно?» Ну это как быстрое закрытие холодильника сохранит энергию и поможет бороться с глобальным потеплением. Конечно поможет, если мы хотим стать рабами слова «поможет». Но большинство людей согласятся, что вам светит многообещающая карьера в смирительной рубашке, если вы грохочете консервами ради спасения белых медведей. Представим, что мой адрес электронной почты davidgilbertson@example.com. Это 27 нажатий на клавиатуре, которые могут привести к опечатке. Ошибка в любом символе определённо приведёт к вводу неправильного адреса, но необязательно этот адрес будет недействительным. [прозрение] Даже если бы в окно ярко засветило солнце, меня одолел особенно дикий чих (я страдаю от

светового чихательного рефлекса

Плохо изученное аутосомно-доминантное заболевание — прим.пер.

) и я по ошибке напечатал #!$%&’*+-/=?^_`{}|~@example.com — так вот, я всё равно пройду большинство проверок на «действительный» адрес электронной почты. (Ещё хуже, если система скажет, что адрес недействительный, когда он на самом деле существует! Ради интереса я только что написал на адрес #!$%&’*+-/=?^_`{}|~@example.com — и девушка сказала, что её ужасно бесит, когда её адрес электронной почты считают недействительным. Она также жалеет о покупке домена example.com, но не собирается сдаваться, как и тот парень, купивший milk.com. Мы начали чатиться, и оказалось, что она живёт всего в паре кварталов от меня и тоже собирает винтажные камеры; на следующей неделе мы пойдём играть в гольф. Я думаю, может она и есть та самая. Впрочем, нужно мне заканчивать болтать и продолжить писать статью). Так какова вероятность, что одна любая опечатка сделает адрес недействительным? Сделаем статистическую модель! Например, вот буква ‘g’. Я скорее допущу опечатку на видимой клавиатуре без нажатого Shift (в модели я учитываю «неизменённые» клавиши). Среди всех клавиш, которые можно нажать на физической клавиатуре, есть только шесть символов, которые в некоторых случаях могут сделать адрес недействительным: [];, и пробел. 6 из 48. Вероятность 12%. Но более вероятна опечатка на соседнюю клавишу. Например, нажатие на ‘h’ вместо ‘g’. Так что из списка 117 млн существующих почтовых адресов я вычислил частотность каждого символа, для каждого из них записал, какие клавиши находятся рядом из клавиатуре, и вывел итоговую вероятность того, что опечатка приведёт к недействительному адресу (знаю, что взламывать LinkedIn ради рассуждения о валидации почтовых адресов было немного чересчур, но любое мнение важно подтвердить реальными данными). Например, символ ‘e’ считается символом с низким риском инвалидации, потому что все окружающие символы оставят адрес электронной почты по-прежнему действительным. Но рядом с ‘p’ есть ‘[’ и ‘;’ на расстоянии нажатия! Так что хотя это более редкий символ, чем ‘e’, но он несёт больший риск превращения адреса в недействительный, если по клавише промахнулись. Я также принял расчёт относительную ловкость каждого пальца. Мы все знаем, что мизинец — умственно отсталый родственник в семействе пальцев, так что и это учитывается.Графическое представление модели, показывающей зону опечатки вокруг P, с учётом недостатков мизинца Теперь предположим, что Силки (фокс) сидит на клавише Shift и я нажимаю неправильную клавишу на клавиатуре. Здесь я рискую попасть по одной из шести опасных клавиш: [];, и пробел. И опять, они делают адрес недействительным только при определённых условиях. Более вероятно, что нажатая клавиша Shift будет действовать только для букв с одной стороны «собачки» в адресе, так что буква ‘l’ с любой стороны считается особенно опасной. Все сказанное относится к единственной опечатке, но если я сделаю вторую опечатку, то есть вероятность, что адрес станет опять действительным (например, если добавить после ). Конечно, всё это учитывается в модели. Не стоит говорить, что я приложил такие же усилия в расчёте модели для экранных клавиатур. Помните также, что если допустить опечатку в символе @, то ошибка будет учтена на самом первом этапе, когда мы проверяем наличие @ как намерение пользователя ввести адрес электронной почты. Я также встроил в модель немного здравого смысла. Известно, что люди с адресом aol.com неумело набирают текст. Дерилы склонны нажимать все клавиши указательным пальцем, как будто боятся, что каждая кнопка обожжёт руку. Люди с буквой ‘z’ в имени используют механические клавиатуры и редко делают ошибки. Известные жизненные аксиомы. Я также учёл факт, что любая кнопка перед «собачкой» в адресе игнорируется, и что ‘f’ и ‘h’ во многом одна и та же буква, если хорошенько подумать. Итак, приняв в расчёт все факторы, я пропустил 117 миллионов адресов через модель. И вероятность, что некорректный адрес электронной почты будет зафиксирован программой валидации адресов составил… 0,00000000000000000000000000000000000000625% Боюсь, что у меня нет времени набирать алгоритм, который абсолютно точно существует и неоспоримо безупречен, так что вам придётся поверить мне на слово, что это число никоим образом не выдумано. Бессмысленно пытаться выяснить, является ли адрес «действительным». Пользователь с гораздо большей вероятностью введёт неправильный и действительный адрес, чем недействительный. Поэтому лучше потратить своё время буквально на любое другое дело, чем проверять валидность адресов электронной почты. Высылайте пользователям письмо активации. (Здесь жирная точка для эффекта).Я опубликовал продолжение этой статьи в первую очередь о том, как помочь пользователям избежать ввода неправильного адреса электронной почты. С реальным кодом! Вперёд. Читайте. Если вам кажется, что эта статья бессмысленная и глупая, и вы хотите ещё такого же, оцените мой подкаст «Дэвид читает Википедию». Он именно о том, о чём вы подумали.

212
88,9k 212
Ссылка на основную публикацию