我尝试使用 python 来了解有关 smtp 协议的更多信息。更准确地说,我一直在尝试将邮件直接发送到主机的 smtp 服务器,但收效甚微。
例如,假设我想向 gmail.com 地址发送邮件,我会查找 gmail.com 的 mx 记录:
>> nslookup -type=MX gmail.com
gmail.com MX preference = 40, mail exchanger = alt4.gmail-smtp-in.l.google.com
gmail.com MX preference = 5, mail exchanger = gmail-smtp-in.l.google.com
gmail.com MX preference = 10, mail exchanger = alt1.gmail-smtp-in.l.google.com
Run Code Online (Sandbox Code Playgroud)
然后我在 python 中执行以下操作:
import smtplib
# Tried both port 465 and 587 (can't test port 25 since it's blocked by my ISP)
s = smtplib.SMTP("alt1.gmail-smtp-in.l.google.com", 587)
Run Code Online (Sandbox Code Playgroud)
我尝试了几个,除了一个之外的每个人我总是得到一个:
“[Errno 10051]尝试对无法访问的网络进行套接字操作”或
“[Errno 10060]连接尝试失败,因为连接方在一段时间后没有正确响应时间过长,或建立的连接失败,因为连接的主机未能响应”异常。
我在某处读到一些邮件服务器对您的 IP …