Andere Antworten hier diskutieren die verschiedenen Probleme bei dem Versuch, dies zu tun. Ich dachte, ich würde zeigen, wie Sie dies versuchen könnten, falls Sie lernen möchten, indem Sie es selbst tun.
Sie können über Telnet eine Verbindung zu einem Mailserver herstellen, um zu fragen, ob eine E-Mail-Adresse vorhanden ist. Hier ist ein Beispiel zum Testen einer E-Mail-Adresse für stackoverflow.com
:
C: \> nslookup -q = mx stackoverflow.com
Nicht maßgebliche Antwort:
stackoverflow.com MX-Voreinstellung = 40, Mail-Austauscher = STACKOVERFLOW.COM.S9B2.PSMTP.com
stackoverflow.com MX-Voreinstellung = 10, Mail-Austauscher = STACKOVERFLOW.COM.S9A1.PSMTP.com
stackoverflow.com MX-Voreinstellung = 20, Mail-Austauscher = STACKOVERFLOW.COM.S9A2.PSMTP.com
stackoverflow.com MX-Voreinstellung = 30, Mail-Austauscher = STACKOVERFLOW.COM.S9B1.PSMTP.com
C: \> telnet STACKOVERFLOW.COM.S9A1.PSMTP.com 25
220 Postini ESMTP 213 y6_35_0c4 bereit. CA Business and Professions Code Abschnitt 17538.45 verbietet die Verwendung dieses Systems für unerwünschte E-Mail-Werbung.
helo hi
250 Postini sagt Hallo zurück
Mail von: <me@myhost.com>
250 Ok
rcpt an: <fake@stackoverflow.com>
550-5.1.1 Das E-Mail-Konto, das Sie erreichen wollten, ist nicht vorhanden. Bitte versuche
550-5.1.1 Überprüfen der E-Mail-Adresse des Empfängers auf Tippfehler oder
550-5.1.1 unnötige Leerzeichen. Erfahren Sie mehr unter
550 5.1.1 http://mail.google.com/support/bin/answer.py?answer=6596 w41si3198459wfd.71
Mit numerischen Codes vorangestellte Zeilen sind Antworten vom SMTP-Server. Ich habe einige Leerzeilen hinzugefügt, um die Lesbarkeit zu verbessern.
Viele Mailserver geben diese Informationen nicht zurück, um das Sammeln von E-Mail-Adressen durch Spammer zu verhindern. Sie können sich daher nicht auf diese Technik verlassen. Es kann jedoch sein, dass Sie einige offensichtlich schlechte E-Mail-Adressen erfolgreich bereinigen, indem Sie ungültige Mailserver erkennen oder Empfängeradressen wie oben abgelehnt haben.
Beachten Sie auch, dass Mailserver Sie möglicherweise auf die schwarze Liste setzen, wenn Sie zu viele Anfragen an sie stellen.
In PHP glaube ich , die Sie verwenden können fsockopen
, fwrite
und fread
die obigen Schritte programmatisch auszuführen:
$smtp_server = fsockopen("STACKOVERFLOW.COM.S9A1.PSMTP.com", 25, $errno, $errstr, 30);
fwrite($smtp_server, "helo hi\r\n");
fwrite($smtp_server, "mail from: <me@myhost.com>\r\n");
fwrite($smtp_server, "rcpt to: <fake@stackoverflow.com>\r\n");