我正在尝试使用Python的smtplib检查电子邮件是否存在
这是我所做的:
s = smtplib.SMTP()
s.connect(mxRecord)
s.mail('my@email.com') //Here the error shows up
错误是:使用Spamhaus阻止了客户端主机...。要请求从此列表中删除,请参阅http://www.spamhaus.org/lookup.lasso (S3130)
发布于 2018-06-06 06:25:45
我尝试了一些东西,它工作得很好。
import dns.resolver, smtplib
MyEmail = "X@hotmail.com"
MyPassword = "XXX"
EmailToValidate = "X@Y.com"
record = dns.resolver.query(str.split(EmailToValidate, "@")[1], "MX")
mx = str(record[0].exchange)
server = smtplib.SMTP("smtp.live.com", 587)
server.ehlo()
server.starttls()
server.ehlo()
server.login(MyEmail, MyPassword)
server.helo("live.com")
server.connect(mx)
server.mail(MyEmail)
code, msg = server.rcpt(EmailToValidate)
print("Code: ", str(code), " message: ", msg)
如果电子邮件存在,(code,message)对将为(250,OK),如果电子邮件不存在,则为(550,Address Rejected)。
我写这篇文章很匆忙,所以可能会有一些不必要的步骤。
https://stackoverflow.com/questions/50705731
复制相似问题