为什么我的 smtp 请求在 python 后一直超时

Why does my smtp request keep timing out in python

我正在尝试使用 smtp 在 python 中发送电子邮件,但我一直收到错误消息:

TimeoutError: [Errno 60] Operation timed out

这是我用来发送消息的代码:

connection = smtplib.SMTP("smtp.gmail.com")
connection.starttls()
connection.login(user=my_email, password=my_password)
connection.sendmail(
        from_addr=my_email,
        to_addrs="RECIPIENT",
        msg="Subject:Motivational quote\n\n" + quote)

我已经尝试确保电子邮件和密码正确无误,并且我已经通过 Gmail 启用了不安全的应用程序,但我仍然不确定为什么会收到此错误。

尝试使用 SMTP_SSL 代替

try:
    connection = smtplib.SMTP_SSL('smtp.gmail.com', 465)
    connection.ehlo()
    connection.login(user=my_email, password=my_password)
    connection.sendmail(from_addr=my_email,
        to_addrs="RECIPIENT",
        msg="Subject:Motivational quote\n\n" + quote))
    connection.close()

    print 'Email sent!'
except Exception as e:
    print e