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

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

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

Как проверяется 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). При отправке письма сервер отвечает кодом 450 или 451, что он временно не готов принять письмо. В этом случае необходимо повторно проверить почтовый адрес более чем через 30 минут. При разовой проверке и проверке по API повторный запрос не отправляется. При пакетной обработке файла система будет ждать 30+ минут и повторно опрашивать почтовый сервер. Время обработки файла с почтовыми адресами в этом случе существенно возрастает. Дополнительная оплата при пакетной обработке за повторную проверку не взимается.

Почтовый сервер mail.ru (inbox.ru, bk.ru, list.ru) на любой адрес отвечает, что такой получатель есть и принимают для него полностью письмо. И только потом присылают FBL письмо, что такого адреса не существует. Вам нужно сделать почтовый ящик для таких писем прописать его в mail.ru и обрабатывать отписку для таких адресов.

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

Данный пример при выходе из поля проверяет корректность заполнения поля е-mail.

Внимание! Использовать этот пример можно только из приватных сетей, т.к. он использует API_KEY на стороне клиента.

Исходный код этого примера:

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

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

В ответе возможны следующие поля:
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

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

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

Команды 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 – После этой команды передается тело сообщения оканчивающееся новой строкой с единственным символом “точка” (rn.rn), после этого восстанавливается командный режим
RSET – Прервать сообщение. При этом все ранее посланные команды — MAIL, RCPT и DATA будут аннулированы.
HELP [команда] – Краткая справка по команде или список поддерживаемых команд
QUIT – Завершение сеанса SMTP
VRFY имя_пользователя – Проверка имени пользователя (Команда обычно запрещена в целях безопасности)
EXPN имя_пользователя – Показывает список всех алиасов пользователя (списки рассылки по Email-адресу) (Команда обычно запрещена в целях безопасности)
AUTH – Показывает серверу механизм аутентификации. RFC 4954 (пришел на смену RFC 2554).

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

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

104$). Код скрипта реализован на PHP, полностью открытый и не использует никаких дополнительных библиотек. Скрипт НЕ будет работать на виртуальном хостинге с закрытым портом SMTP.

Читайте также:  Настройка видеокарты NVIDIA

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

РегистрацияВойтиВойти через VKВойти через FBВойти через Google

Пошаговая инструкция по проверке email на существование

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Заключение

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

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

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

Как вы проверяете адреса на существование? И проверяете ли вообще? Поделитесь опытом в комментариях и подпишитесь на нашу рассылку — вам ведь интересно, как выглядит наше письмо-подтверждение?

Как узнать, существует ли адрес электронной почты

  • Специфика передачи писем в сети
  • Когда адрес недоступен
  • Проверка одного e-mail
  • Как проверить базу адресов
  • Видео по теме

Электронная почта, или e-mail, — это атрибут интернет-общения и современного бизнеса. Помимо удобного и быстрого обмена письмами, она имеет и другие достоинства перед бумажной почтой: высокая надежность, возможность передачи файлов различных типов — от простых текстовых до самых специфичных форматов, простота использования, чаще всего бесплатное обслуживание и т.д. Однако без дополнительных средств не всегда присутствует возможность узнать, используется ли (или использовался ли когда-либо) определенный адрес электронной почты.

Специфика передачи писем в сети

Электронная почта, как и настоящая, имеет свой адрес, необходимый для получения сообщения. Каждое такое место назначения уникально, однако все они имеют общий вид имя_пользователя@имя_домена.

Читайте также:  Как создать интернет-магазин ВКонтакте

На многих сайтах есть функции для проверки на существование одного электронного ящика или целого списка почтовых адресов. Первый способ чаще всего применяется в некоммерческих целях, когда чтение письма принципиально для пользователя, его отправившего. Второй случай подходит для массовых рассылок сообщений, где важно охватить “живую” аудиторию.

Когда адрес недоступен

Проблема неактивных e-mail адресов возникает по нескольким причинам:

  • неверные данные;
  • отключение аккаунта — временное или перманентное;
  • предоставление почты, зарегистрированной пользователем на ограниченное время (чаще всего на час или на сутки);
  • технические неполадки на сервере, содержащем e-mail;
  • прекративший работу домен электронного ящика.

Вне зависимости от первопричины результат всегда один: после попытки отослать сообщение на нерабочий адрес сервер присылает отправителю автоматическое письмо об ошибке. Подобных проблем можно избежать, если заранее знать, активен ли e-mail адрес или нет.

Проверка одного e-mail

Большинство сайтов с возможностью проверки почты довольно просты в освоении. Для примера возьмем страницу https://2ip.ru/mail-checker/ из ТОПа выдачи.

Для начала процедуры введите или вставьте конкретный e-mail в соответствующее — причем единственное — поле и нажмите на кнопку “Проверить. Необходимо вписать полный адрес, т.е. имя пользователя и домен.

После обновления страницы сайт выведет информацию о наличии e-mail в базе — существующий помечается зеленым цветом.

Получается, исследовать один e-mail на существование может любой пользователь сети быстро и совершенно бесплатно. Однако не стоит пытаться проделывать это с помощью автоматических программ на целый список сразу — сайты блокируют эту процедуру спустя несколько пунктов. Для анализа большого количества адресов предполагаются другие способы.

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

Задача загрузки целой базы e-mail имен — более глубокая и трудоемкая в отличие от исследования одного адреса. Поэтому полноценный вариант проверки онлайн отсутствует, и необходимо прибегнуть к помощи специализированному софту на ПК. Чаще всего это платные программы, однако большинство из них предлагает триал-версию, т.е. полным функционалом можно пользоваться на протяжении ограниченного времени без денежных вложений, чтобы протестировать продукт. Например, рассмотрим работу ePochta Verifier.

Скачать или купить программу можно на официальном сайте разработчика: https://www.epochta.ru/verifier/ . Для этого пролистайте страницу чуть ниже и нажмите на одну из кнопок.

После установки и запуска открывается первая страница ePochta Verifier, на которой можно увидеть уже загруженную базу данных, информацию по ней, журнал работы.

Загрузите свой список адресов, нажав на кнопку “Открыть” и выбрав подходящий пункт.

После открытия файла выберите нужный способ во вкладке “Проверить”.

Спустя некоторое время в столбце “Статус” напротив каждого адреса появится информация о его валидности.

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

Проверка e-mail адресов на существование: yandex, gmail, mail.ru, mail.com и др.

By ibred | 16.05.2018 | Comments 0 Comment

В первой части статьи Универсальный чекер e-mail почты на валидность. Часть 1. мы говорили о методе проверке почтовых адресов к которым у Вас есть доступ (по паре логин:пароль). Сегодня мы продолжим данную тему и расскажем, как проверить почту на существование с помощью ZennoPoster.

Мы рассмотрим с Вами 4 пункта (условно их 3):
1. Проверить синтаксис написания почтового адреса по формату.
2. Проверить существование домена.
3. Подключиться к SMTP серверу проверяемого ящика и совершить попытку отправки письма.
3.1 Проверить существование email адреса через почтовый сервис.

Зачем это нужно?

Отправляя письма на несуществующие почтовые адреса, ваши письма будут определены как «нежелательные», что повлечёт за собой санкции со стороны почтового хостинга — бóльшая часть писем будет автоматически отправляться в папку спам или отклоняться вовсе.

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

Синтаксическая проверка

Проверка существования email адреса начинается с соответствия стандартам написания, согласно RFC 5322.

Это регулярное выражение для канонических адресов электронной почты:

Проверка существования домена

После проверки синтаксиса почтового ящика, необходимо удостовериться, что домен адресата активен.

Нас интересует не столько статус домена, сколько наличие MX (mail exchanger) записей в DNS. которые указывают серверы, на которые нужно отправлять электронную почту, предназначенную для адресов в данном домене. Если они не прописаны, значит и проверяемый нами почтовый ящик не существует.

Данную проверку можно осуществить разными способами. Я поделюсь с Вами четырьмя:

  • С помощью библиотеки ARSoft.Tools.Net.Dns
  • Запрос к dns.google.com
  • Утилита dig
  • Утилита nslookup

(Шаблон с примерами будет в комплекте)

Я воспользуюсь 4-им способом, так он мне наиболее привычен.

Стандартный кубик запуска программ не позволяет сохранить результат выполнения в переменную, поэтому будем выполнять её через C# код:

Анализ ответа почтового сервера

Финальный шаг — подключаемся к SMTP серверу и имитируем отправку сообщения на проверяемый ящик. Если вернётся ответ 250 — ящик существует, 550 — к сожалению, такого адреса нет. Данный способ не является панацеей т.к. не все почтовые сервисы возвращают корректный ответ на данную команду, к ним относятся Mail Ru, Mail.com, Hotmail, Yahoo (о них мы поговорим отдельно, чуть ниже). Но с такими популярными службами, как Яндекс и Gmail проблем не возникает.

Итак, чтобы начать, необходимо подключиться к одному из почтовых серверов по 25 порту, которые хранятся у нас в списке «MX».

Далее мы говорим ему привет 🙂 с помощью команды:

Где второе — это название домена с которого Вы обращаетесь, может быть любым.

После чего мы посылаем команду:

Cообщая, от чего имени мы будем вести беседу, и завершаем последней строчкой:

И вот здесь мы ждём ответ, 250 — good, 550 — bad.

Код выглядит следующим образом:

С этим разобрались, супер!

Когда способ через SMTP сервер не работает — проверяем существование E-mail адреса через почтовый сервис

Вернёмся к почтовым сервисам, где данная проверка через SMTP сервер не работает (Mail Ru, Mail.com, Hotmail, Yahoo). Как же быть в таком случае?

На сайте КАЖДОГО почтового сервиса есть возможность восстановления пароля иили проверка занятности адреса при регистрации, этими способами на примере двух сайтов (mail.ru и mail.com) мы и воспользуемся.

Читайте также:  Fraps: поиск альтернативы

Переходим на страницу восстановления пароля: https://e.mail.ru/password/restore/

Перед нами несложная форма — то, что нужно!

В чекере важна скорость, поэтому работа через браузер нам не подходит. Для создания шаблона на запросах на потребуется отследить трафик при совершении нужных нам действий, для этого активируем вкладку «Трафик» или запускаем стороннюю программу-сниффер.

Введём заведомо несуществующий логин и посмотрим, в каком виде нам придёт ответ.

Ключевой запрос, который нам нужен: https://e.mail.ru/api/v1/user/password/restore

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

Остается только перенести необходимые аргументы в запрос: X-Requested-With, Referer, X-Request-Id; Последний мы сгенерируем с помощью кода:

Последний шаг — формирование данных, которые необходимо передать в POST запросе. Делаем также по примеру:

Меняем статичные данные на переменные: tab-time (unix время) и e-mail, предварительно обработав UrlEncode.

Отправляем запрос и получаем примерно такой ответ:

Строчка «not_exist» означает, что ящика не существует, по ней и будем проверять все остальные почтовые ящики.

Не так уж и сложно, не правда ли? 🙂

Если всё-таки у Вас возникли сложности — пишите в обсуждении данной темы на форуме.

Переходим на страницу восстановления пароля: https://password.mail.com/passwordrecovery/

К сожалению, данная форма нам не подходит из-за каптчи т.к. это сильно будет тормозить процесс.

Воспользуемся вторым способом — проверкой занятости никнейма через форму регистрации: https://service.mail.com/registration.html

Рядом с полем ввода никнейма есть кнопка для проверки его на занятость, по клику на которую вылетит соответствующее уведомление:

Если же E-mail существует, появится следующий текст: [email protected] is not available, please choose one of the following

Отследим запросы. Ключевой запрос выглядит так:

Нужные куки так же получаем после первого GET запроса к странице и копируем дополнительные заголовки: Wicket-Ajax, Wicket-FocusedElementId: id20

Данные для отправки выглядят следующим образом: [email protected]&

Значение zXXXXXXXX является динамическим, поэтому его, как и почту, необходимо заменить на переменную.

Применим xPath выражение, чтобы его достать: «.//*/span[contains(@class, ‘EmailAddress’)]/input»

Данные, которые передаются в URL (после знака вопроса) также являются динамическими и хранятся в аргументе onclick того же поля, откуда мы забрали нужно zXXXXXX значение.

Отправляем запрос, парсим текст оповещения и определяем, существует почта или нет.

Готовый шаблон Вы можете скачать в теме данной статьи, на форуме.

Блог вебмастера

создание сайтов, заработок в сети, раскрутка, программирование

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

У вас есть база эмейл-адресов? Но сколько из них валидных? Сколько реально существующих, рабочих в данный момент, не удаленных и не заблокированных? Вот и я подумал как это можно проверить. Подобрал и протестировал несколько модулей для python, слал запросы через telnet, проверял через сайты. И решил поделиться с вами как можно проверить рабочий email или нет.

Как проверить существование мейла через telnet

Данный способ я опробовал на личных доменах, mail.ru, gmail.com и Яндекс. Gmail в большинстве случаев сбрасывал подключение и толкового ничего не добился (использовал модуль для python). Кроме того, для подключения к gmail я использовал 587 порт, а не 25. А теперь по порядку.

1. Открываем командную строку (cmd). Вводим

Этот код проверяет записи MX для домена. Для гугла вводите gmail.com

nslookup для mail.ru

2. Дальше подключаемся по telnet. Пишем

Как проверить существование эмейл адреса. Подключаемся по telnet

Не забывайте писать порт. Я вначале забыл и долго думал почему не коннектится. Если у вас пишет «telnet не является внутренней или внешней командой…», то его нужно включить в настройках Windows.

В случае с gmail.com я подключался к smtp.gmail.com по 587 порту , но все равно подключение сбрасывалось.

3. После того как подключились по telnet пора отправлять запросы.

Запросы telnet для проверки существования email

. Это начало (можно ehlo bdseoru). Дальше почта, с которой тестируется отправка.

Mail from, как оказалось, играет важную роль. Если у домена нет своего smtp сервера, то дальше не пройдете.
Потом пишем эмейл получателя (именно то, что нам нужно тестировать)

Если мы получаем код ответа 250, значит все хорошо.

Но это в большинстве случаев. С почтой mail.ru все адреса возвращают код 250. То есть сервера мейл.ру готовы принять письмо, но адресат может не существовать (и соответственно письмо не дойдет, а отправитель может получить авто ответ от mail.ru).

Как проверить существование email на mail.ru

Если проверяемый эмейл адрес размещен на mail.ru, то можно проверить двумя способами. Вариант первый — зайти на «мой мир» и ввести эмейл в строке поиска.

Рабочий email или нет. На mail.ru

Вариант второй — воспользоваться формой восстановления пароля. Если адрес не существует, то будет ошибка.

Mail.ru восстановление пароля

А если существует — то форма для ввода секретного слова.

Как проверить рабочий email или нет через Python

Я проверил несколько модулей. Более быстрым и точным для меня показался validate_email. Ставится он через pip, вместе с ним нужно поставить pyDNS (для проверки на существование).

Скорее всего, Вы получите ошибку при установке pyDNS. Я пользуюсь Python3 и мне помогла установка py3dns, и с версией.

Код очень простой. Импортируем модуль и делаем проверку:

Если адрес существует, выведет True, если нет — None.

Чтобы проверить мейл адреса списком, воспользуемся циклом for:

И все мне в этом модуле нравится, но вот адреса mail.ru он не определяет. Кстати, вот еще некоторые примеры для модуля validate_email:

Заключение

Некоторые smtp сервера также позволяют получить статус email адреса. Например, при запросе к почте что на яндексе, можно получить ответ что пользователь не существует.

Есть сайты, где можно проверить статус эмейл адреса онлайн. Кроме того, что там иногда капча (для массовой проверки не годится), так еще и проверка не 100% точная: одни адреса несуществующие определяют как реальные (пример с mail.ru); другие как несуществующие, хотя они полностью рабочие (на своих доменах).

Есть программы-чекеры. Но опять же — 100% правды они не показывают, не говоря уже о вирусах в программах-оболочках (когда функционал проверки и не заложен даже). Прежде чем скачивать такие программы — подумайте.

А как Вы проверяете email адреса на существование?