J'essaie de vérifier si un e-mail existe réellement en résolvant d'abord son DNS, puis de vérifier si l'e-mail est valide en utilisant le code ci-dessous:
email = [email protected]
domain = email.split("@")[-1]
records = dns.resolver.query(domain, 'MX')
mxRecord = records[0].exchange
mxRecord = str(mxRecord)
server.connect(mxRecord)
server.helo(Host)
server.mail('[email protected]')
code, message = server.rcpt(str(email))
server.quit()
if code == 250:
print('valid email', message)
else:
print('invalid email', message)
Cela fonctionne quelques fois, mais lorsque j'envoie plusieurs demandes, je reçois un message comme:
"5.7.1 Service non disponible, hôte client [122.166.xxx.xxx] bloqué à l'aide de Spamhaus. Pour demander la suppression de cette liste, voir http://www.spamhaus.org/lookup.lasso (AS160312312) [BL2NAM02FT12312.eop-nam02.prod.protection.Outlook.com] '"
Je comprends qu'ils essaient de bloquer mon adresse IP car il pense que c'est du spam.
Voici mes questions:
server.mail ('[email protected] ')
Essaye ça.
pip install validate_email
from validate_email import validate_email
is_valid = validate_email('[email protected]', verify=True)
Visitez https://pypi.org/project/validate_email/ pour plus d'informations.