Як перевірити, чи існує електронна адреса?


26

Я намагаюся перевірити 2000 електронних адрес, щоб побачити, чи існують вони. Чи є способи перевірити, чи адреса електронної пошти дійсна, не надсилаючи електронну пошту на кожну адресу ?.

Я знайшов онлайн-сервіс Email Unlimited , але він перевіряє лише 20 адрес електронної пошти, перш ніж купувати повну версію.

Відповіді:


37

Просто для повноти картини : деякі сервера SMTP роблять вказати , якщо адреса електронної пошти існує. Дотримуючись повного прикладу в іншій відповіді :

telnet gmail-smtp-in.l.google.com 25

helo example.com
mail from: <me@example.com>
rcpt to: <somenonexistinguser@gmail.com>
550-5.1.1 The email account that you tried to reach does not exist. Please try
550-5.1.1 double-checking the recipient's email address for typos or
550-5.1.1 unnecessary spaces. Learn more at
550 5.1.1 http://mail.google.com/support/bin/answer.py?answer=6596

Після успіху та на серверах, які не можуть чи не хочуть повідомити, чи є адреса дійсною, остання команда дасть:

250 2.1.5 OK

Потім можна просто викликати, quitне надсилаючи жодного електронного листа. Проте, намагаючись багато адрес, це може також заблокувати вас.

(Gmail не підтримує vrfyкоманду. На сайті також є кнопка «Перевірка доступності» при вході на новий обліковий запис Gmail. Це також може дати вам деяку інформацію, але старі адреси будуть недоступні в протягом деякого часу.)


1
SMTP визначає VRFYкоманду для цієї мети.
grawity

@grawity, це теоретично може бути правдою, але VRFYНЕ працює з Gmail. (Дивіться мій коментар у відповіді Майкла .)
Арджан

2
Не всі сервери відповідають на помилку "не існує" для відсутніх облікових записів, тому це не зовсім надійно. Якщо сервер є проксі-сервером (та / або зовнішнім вторинним сервером) для ряду інших серверів, він може не знати, які облікові записи є дійсними під час наступного переходу, тому дасть "250 ОК" для будь-чого, а деякі сервери встановлюються таким чином у щоб зупинити спамерів, які намагаються перерахувати дійсні облікові записи. Швидкий тест деяких поштових серверів наших клієнтів показав, що 1 з 5 я пробував не дав відповіді 5xx для неіснуючого облікового запису.
Девід Спіллетт

(@David, я знаю. Тому я вжив слово "деякі" вище ... Але я це трохи підкреслив.)
Арджан

@ Арьян Я написав невеликий пітон скрипт для автоматизації цього gist.github.com/arulrajnet/c613bd0fad5de00bab2e
Arul

23

Якби це було можливо, спамери по всьому світу співали б із радістю.

Вибачте, але ні, неможливо дізнатися, існує якась вказана електронна адреса чи ні.

На мою думку, це особливість!

  • Якщо ви знаєте своїх кореспондентів, то ви дізнаєтесь їх контактну інформацію.
  • Якщо ви не знаєте своїх кореспондентів, то ви незнайомця, і вони не оцінять отримання від вас небажаної пошти.
  • Якщо ви знали своїх кореспондентів, і вони не повідомляли вас про зміни їх адреси, то вони прийняли (не?) Свідоме рішення не отримувати вашу пошту.

Найкраще, що ви можете зробити, - це надіслати електронний лист до свого списку, а потім видалити ті, що відскакують (= ті, які не вдалося доставити).

Будь обережний! У деяких країнах забороняється надсилати небажані масові електронні листи людям, які заздалегідь не дали прямо це.


Дякую за це Але так, ми знаємо контакти, але деякі з них не оновлювали свої контактні дані з нами, коли вони змінювали позиції чи компанії. Ми надсилали розсилку в останній раз, і вона відкидає адреси електронної пошти, і наш обліковий запис було відновлено через високий відсоток відмов електронних листів. Я знайшов його в Інтернеті, але не впевнений, чи це надійно: verify-email.org
tintincutes

2
+1 - якби це працювало, його швидко зловживають. Ось чому ми не можемо мати приємних речей!
Девід Спіллетт

2
Не впевнений, чому це рішуче підтримується. Урок етики 101? Я бачив щось подібне до того, що ОП хоче використовувати, і навіть не для шахрайських цілей. Інші відповіді та коментарі припускають, що це можливо для багатьох поштових серверів, особливо корпоративних / не-Google.
Даніель Бек

1
@Daniel: це, безумовно, можливо для деяких ( фактично багатьох ) поштових серверів / служб - але це неможливо надійно і не є обов'язково надійним для будь-якої вказаної адреси. Я голосував за технічну правильність "ви не можете точно знати", а не будь-який етичний аспект.
Девід Спіллетт

1
Люди, які використовувались як фальшивий відправник спаму, не будуть надто задоволені цією "особливістю", коли отримують багато зворотних розборок . (Крім випадкового рикошету від прогонів , які використовують різний From, Reply-toабо Return-Path. Для кожного повідомлення, я отримав тисячі рикошетів двічі легко фільтрується, до сих пір не дуже добре.)
Арьян

7

Дійсно не існує жодного доброго способу зробити це. У протоколі SMTP є команда 'VRFY', але я не знаю того, хто більше працює, тому що це занадто корисно для спамерів. Більшість господарів просто більше відмовляться від команди.

Найкраще, що ви можете зробити зараз, - це надіслати електронну пошту та записати, що відмовиться (зазначивши, що деякі хости поштових повідомлень просто оброблять не доставлену пошту, а не підштовхують її).

Я не знаю, у чому полягає ваш бізнес чи ціль у цьому списку, але ви повинні знати, що якщо ви надсилаєте електронну пошту одночасно 2000 людям, ви, ймовірно, отримаєте повідомлення про спамерів від деяких хостів електронної пошти.


1
Можливо, більше схоже на очищення списку контактів. Електронна пошта все одно відскакує.
Даніель Бек

Спроба очистити контакти; Мені потрібно розробити нову базу даних контактів. У нас дуже багато клієнтів з різних компаній, не впевнені, чи треба я їх класифікувати в одній базі даних чи створив би інший БД для різних компаній. Що було б найкращим способом?
tintincutes

Якщо я правильно розумію, то vrfy знадобиться ім'я користувача , а не адреса електронної пошти? Якщо це правда, то я гадаю, що його в основному вимкнено з міркувань безпеки, а не для боротьби зі спамерами? В Gmail, як vrfy existinguser, vrfy existinguser@gmail.com, vrfy someunknownuserі vrfy someunknownuser@gmail.comзагальний вихід 252 2.1.5 Send some mail, I'll try my best, в той час як на самому ж Gmail rcpt to: робить виявити , якщо адреса електронної пошти є дійсним.
Ар’ян

За допомогою vrfy ви підключаєтеся до поштового сервера, потім vrfy ім'я користувача (частина перед @ в електронній пошті). Якщо він працює, він скаже вам так чи ні, чи справжній користувач. Якщо це не працює (багато хто з них), то він або скаже «заборонено», або «я не маю поняття». Зауважте, що відповідь "Я не маю уявлення" цілком правомірна для хоста для переадресації пошти, який не має доступу до списку облікових записів. Тож навіть під час роботи vrfy може бути не такою корисною.
Майкл Коне

2

Неможливо точно визначити, чи адреса справжня чи ні - будь-який продукт, який стверджує, що може, перебільшує свої здібності, тому ви повинні розглянути будь-які інші претензії, висловлені цинічним оком.

Існують бібліотеки F / OSS, які роблять стільки, наскільки це можливо: я здогадуюсь, що більшість програмного забезпечення на ринку - це просто вигадкова обгортка навколо тих, щоб ви могли, можливо, легко зробити своє власне, що так само добре / погано якщо у вас є досвід кодування. Але пам’ятайте, що якою б не була хороша процедура перевірки, вона буде дуже схильною давати як хибні позитивні, так і помилкові негативні результати.

http://freshmeat.net/projects/emailaddressvalidationcomponent, наприклад, придумує швидкий пошук свіжого м'яса, і якщо припустити, що опис правильний, він робить усе, що можна зробити, щоб спробувати перевірити адресу.


@DanieL: Добре, дякую за це. Як щодо цього? Чи це також дійсно: techie-buzz.com/how-to/…
tintincutes

@tintincute: виглядає досить дійсно, моє джерело Lifehacker використовує те саме відео ...
studiohack

2

Ви можете пінг -адресу електронної пошти.

З Lifehacker.com:

http://lifehacker.com/5697360/how-to-verify-if-an-email-address-is-real-or-fake

Коли ви комусь надсилаєте електронний лист, повідомлення переходить на SMTP-сервер, який потім шукає записи MX (Mail Exchange) домену одержувача електронної пошти.

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


1

У контексті компанії це можна зробити за допомогою автоматизації пошуку в каталозі Active.


1

Як щодо написання сценарію Perl для автоматизації цієї роботи? Перевірте це: http://search.cpan.org/~ilyam/Mail-CheckUser-1.21/CheckUser.pm


Це фактично використовує команди SMTP для підключення до SMTP-сервера, і якщо ви занадто скоро запитуєте, ви можете бути позначені як спамер і заблоковані. Отже, не добре для перевірки тисяч електронних листів.
Bulrush

1

Ви можете спробувати: http://verify-emails.com/

Це все ще послуга спробувати і купити, але вона може обробляти списки, а також окремі електронні листи та може бути включена до реєстраційних форм.


Цей домен призначений для продажу. Сайт мертвий.
Bulrush

1

Також мені знадобився спосіб перевірити існування адрес електронної пошти, тому я закінчив писати власну маленьку утиліту. (Пітон)

http://github.com/un33k/python-emailahoy

Це на 100% точно, коли постачальник чесний з вами.
(gmail є досить чесним, але yahoo НЕ так, як це говорить "так" для всіх листів.)

Це краще, ніж нічого, оскільки це зменшило кількість спамів для мене більше ніж на 50%.


0

Можна перевірити, чи існує електронна адреса, скориставшись цим посиланням: http://verify-email.org/ . Він надсилає адресу електронної пошти і відповідає, Okякщо електронна пошта існує, і Badякщо електронна пошта є фальшивою або не існує. ще одне посилання, корисне для цієї проблеми: http://www.shoutmeloud.com/how-to-verify-if-email-address-exist-or-not.html


1-е посилання: схоже, перевірка однієї адреси безкоштовна, але перевірка 2000, як задано у запитанні, вимагає платного програмного забезпечення. Це ситуація, для якої питання шукає альтернативу, тому це насправді не вирішення питання. 2-е посилання також стосується одиночних чеків. Супер Користувач - це не форум, де типово залишати все, що зазвичай стосується цієї теми. Її мета - створити базу знань, і кожна відповідь повинна забезпечити рішення того, що було задано. Відповіді, які, як правило, не приваблюють низових голосів.
fixer1234
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.