使用SMTP库在Linode服务器上部署的Python脚本发送电子邮件



所以我创建了一个脚本,当脚本运行完成时,它会发送一封更新电子邮件。在当地一切都很好。但是,当在Linode服务器上部署和运行时,它就不再工作了。这是代码:

def email(products, new_products, updated_products):
#print(products, new_products, updated_products)
message = EmailMessage()
message.set_content("Products scraped: {}, New products: {}, Updated products: {}".format(products, new_products, updated_products))
message['FROM'] = "e-mail"
message['TO'] = ["e-mail"]
message['SUBJECT'] = "Update"
context = ssl.create_default_context()
#set up SMTP server
with smtplib.SMTP('smtp.gmail.com', 587) as smtp:
smtp.starttls(context=context)
smtp.login(message['FROM'], "password")
smtp.send_message(message)
smtp.quit()

错误发生在以下行:带有smtplib。SMTP('SMTP.gmail.com',587(作为SMTP。我尝试过不同的端口,但都导致了以下错误:超时错误:[Erno 110]连接超时。有人有这个问题吗?或者有人有其他从服务器发送电子邮件的好方法吗?提前感谢!

Linode默认情况下阻止传出邮件以防止垃圾邮件。

https://www.linode.com/community/questions/19082/i-just-created-my-first-linode-and-i-cant-send-emails-why-mailing-ports-25-465-a

尝试为要从发送电子邮件的电子邮件id启用不太安全的应用程序

最新更新