Проверка Email на валидность и существование.

Данная форма позволяет проверить Email на валидность.



Осталось 19 запросов до 03:03:38 20.09.19


Для пакетной проверки eml verification, Вы можете загрузить файл формата Excel (csv, txt), любой столбец которого содержит email для проверки. Файл может быть упакован zip или rar. За каждый проверенный email с вас будет списан один запрос согласно тарифа. Если включена проверка по SMTP: списывается два запроса, адреса в результирующем файле будут упорядочены по smtp-серверам. Если такой email не существует, то в файле после формально корректного адреса будет информация о проверке по SMTP. Максимальный размер загружаемого файла 32Mb.





Для загрузки файла необходимо войти или зарегистрироваться! Результат будет продублирован на указанную в профиле почту.

Как проверяется email адрес

Проверка синтаксиса

При запросе подтверждения адреса электронной почты API email будет в первую очередь выполнять стандартную проверку синтаксиса электронной почты, следовательно, проверять его соответствие правилам регулярных выражений, таким как:

Формат адресов электронной почты - local-part @ domain, где local-part может иметь длину до 64 символов, а имя домена может содержать не более 253 символов. Формальные определения приведены в RFC 5322 и RFC 5321 - с более читаемой формой, приведенной в информационном RFC 3696 .

Локальная часть состоит из прописные и строчные латинские буквы (A – Z, a – z) (ASCII: 65–90, 97–122), Цифры от 0 до 9 (ASCII: 48–57), специальные символы: # - _ ~! $ & '() * +,; =: и %20, точка, точка, полная остановка), ASCII 46, при условии, что он не является первым или последним символом, а также при условии, что он не появляется последовательно (например, John..Doe @ example.com не допускается).

Доменная часть email должна соответствовать строгим правилам: она должна соответствовать требованиям к имени хоста, состоящему из букв, цифр, дефисов и точек. Кроме того, доменная часть может быть литералом IP-адреса, заключенным в квадратные скобки, хотя это редко встречается, за исключением спама в электронной почте.

Проверка доступности почтового сервера

Проверяется доступность MX-записи почтового сервера с помощью DNS-запроса.

Проверка самого ящика на сервере(проверить по SMTP)

Для этого сервис устанавливает соединение с почтовым сервером получателя и отправляет ему команды по аналогии с отправкой письма. Если на сервере нет такого получателя, то при отправке команды "письмо для такого-то мыла"(RCPT TO:) сервер отвечает что такого ящика нет(код 550). Не все сервера отвечают согласно требованиям RFC, например сервер mail.ru на любое письмо отвечает кодом 250, что всё Ok.

С примером установления соединения и отправки команд можете ознакомиться здесь. Время проверки каждого е-mail может занимать до 60 секунд.

Некоторые почтовые сервера для защиты от спама используют технологию серых списков (Greylisting). При отправке письма сервер отвечает кодом 451, что он временно не готов принять письмо. В этом случае необходимо повторно проверить почтовый адрес более чем через 30 минут. При разовой проверке и проверке по API повторный запрос не отправляется. При пакетной обработке файла система будет ждать 30+ минут и повторно опрашивать почтовый сервер. Время обработки файла с почтовыми адресами в этом случе существенно возрастает. Дополнительная оплата при пакетной обработке за повторную проверку не взимается.

Почтовый сервер mail.ru на любой адрес отвечает, что такой получатель есть и принимают для него полностью письмо. И только потом присылают FBL письмо, что такого адреса не существует.

Api проверки Email на валидность

http://htmlweb.ru/api/service/email?email=проверяемый_email&api_key=API_KEY_из_профиля

Если Вы хотите проверить непосредственное наличие почтового ящика на сервере с помощью SMTP-запроса, добавьте параметр smtp_check. Время проверки может занять до 20 секунд. За проверку по smtp с вас будет списан дополнительный запрос. Пример:

http://htmlweb.ru/api/service/email?email=проверяемый_email&smtp_check&api_key=API_KEY_из_профиля
В ответе возможны следующие поля:
email - полный запрошенный e-mail
user - часть email до символа @
domain - домен

format_valid = false
error = 'Неверный символ в e-mail!'

free - почта на бесплатном почтовом сервере, типа yandex.ru или gmail.com

disposable = true - почта на одноразовом почтовом сервисе типа mailinator.com, trashmail.com
message = 'Email одноразовый';

mx_found = false
error = 'Email сервер не существует!'

role=true - это адрес, который обычно указывает на функцию (например, «поддержка», «администратор почты»), а не на отдельное лицо или имя.

Если передан параметр smtp_check, то дополнительно возвращается:

mx_records - список почтовых серверов
smtp_check = true или false, если false, то в error код ответа SMTP-сервера

Если все проверки пройдены, возвращается:
message = 'email валидный'

Примеры API запросов проверки email

Пример запроса в формате json: https://htmlweb.ru/json/service/email?email=kdg@a12sd.ru

Ответ:
{"email":"kdg@a12sd.ru",
    "user":"kdg",
    "domain":"a12sd.ru",
    "mx_found":false,
    "error":"Email сервер не существует!",
    "limit":17}

Пример запроса: https://htmlweb.ru/json/service/email?email=kdg@gmail.com

Ответ:
{"email":"kdg@gmail.com",
    "user":"kdg",
    "domain":"gmail.com",
    "free":true,
    "message":"email валидный",
    "limit":16}

Пример запроса: https://htmlweb.ru/json/service/email?email=kdg22@htmlweb.ru&smtp_check

{"status":200,
"email":"kdg22@htmlweb.ru",
"user":"kdg22",
"domain":"htmlweb.ru",
"mx_records":["mx.yandex.ru"],
"smtp_check":false,
"error":"550 5.7.1 No such user!",
"limit":19}
Общие параметры для всех API сервисов
Другие сервисы, доступные по API
Стоимсть API запроса и тарифы

Команды SMTP сервера

SMTP (Simple Mail Transfer Protocol — простой протокол передачи почты) — это сетевой протокол, предназначенный для передачи электронной почты в сетях TCP/IP. ESMTP (англ. Extended SMTP) — масштабируемое расширение протокола SMTP. В настоящее время под «протоколом SMTP», как правило, подразумевают ESMTP и его расширения. SMTP использует порт Порты TCP 25.

Протокол SMTP (RFC 821) использует простые текстовые команды в формате ASCII и возвращает трехзначные кодированные ответы с текстовыми сообщениями.

Формат команд в SMTP прост: command [parameter], где command — четырехсимвольная команда протокола SMTP, а parameter — необязательный параметр, определяющий тип данных в команде.

EHLO сервер_отправитель> или устаревшая HELO хост_отправитель - Открывам соединение и сообщаем серверу имя отправляющего сервера (хоста)
MAIL FROM: адрес_отправителя - Email-адрес отправителя.
RCPT TO: адрес_получателя - Email-адрес получателя (recipient)
DATA - После этой команды передается тело сообщения оканчивающееся новой строкой с единственным символом "точка" (\r\n.\r\n), после этого восстанавливается командный режим
RSET - Прервать сообщение. При этом все ранее посланные команды — MAIL, RCPT и DATA будут аннулированы.
HELP [команда] - Краткая справка по команде или список поддерживаемых команд
QUIT - Завершение сеанса SMTP
VRFY имя_пользователя - Проверка имени пользователя (Команда обычно запрещена в целях безопасности)
VRFY rich
250 
VRFY prez@gmail.com
252 
VRFY jessica
550 jessica... User unknown
EXPN имя_пользователя - Показывает список всех алиасов пользователя (списки рассылки по Email-адресу) (Команда обычно запрещена в целях безопасности)
AUTH - Показывает серверу механизм аутентификации. RFC 4954 (пришел на смену RFC 2554).

Купить скрипт проверки email адресов

На написание этого скрипта ушло меньше часа времени, а на его отладку я потратил больше месяца. Неоднократно я получал бан от почтовых серверов и потом вытаскивал свой ip из бана. Если Вы не хотите пройти через все злоключения, Вы можете приобрести скрипт проверки почтовых адресов за 8000 рублей (~124$). Код скрипта реализован на PHP, полностью открытый и не использует никаких дополнительных библиотек. Скрипт НЕ будет работать на виртуальном хостинге с закрытым портом SMTP.

    Соглашение по использованию платной версии:
  • Вы можете использовать полученный код в любых своих разработках, вы не обязаны указывать ссылку на источник.
  • Вы НЕ имеете права перепродавать его, размещать в свободном или ограниченном доступе, а также публиковать в любом виде.
  • Все остальные права сохраняются за автором.
Регистрация Войти Войти через VK Войти через FB Войти через Google
При нажатии кнопки Оплатить и загрузить, Вы подтверждаете согласие с условиями использования скрипта, описанными на этой странице.
Вы будете перенаправлены на страницу выбора способа оплаты, после оплаты 8000 рублей (~124$) начнется загрузка файла.
Чтобы мы не потеряли Вашу оплату при потере соединения, укажите Ваш действующий
адрес электронной почты
Сомневаетесь? Вы всегда сможете задать вопросы и получить помощь.

Вам может быть интересно:


.

Популярное:


Содержание: