在使用Python构建基于smtplib的电子邮件应用程序时,是否可以通过电子邮件地址确定smtp地址?
谢谢!
Python smtplib
模块 不执行邮件路由,因此将其留给智能主机。
您可以使用 dnspython
查找目标域的 MX 记录(如果没有 MX 记录,则查找 A 和 AAAA 记录)。然后,您可以将结果地址传递给 smtplib
。
但是,这只是实现正确邮件路由所需工作的一小部分:如果目标邮件服务器无法访问或超时,则应尝试下一个服务器。类似地,如果它响应4xx
错误代码,则需要处理。如果所有服务器都不可用,则需要临时将消息存储在本地,因此需要实现自己的邮件队列。此外,您的外部 IP 地址可能会被列入邮件黑名单。