通过Python从本地主机向本地主机发送邮件

2 投票
1 回答
5725 浏览
提问于 2025-04-17 16:20

我正在我的本地电脑上搭建和测试一个网络服务,准备好后再上线。我想测试一下邮件服务。我使用的是标准的Python邮件和smtplib库。

import smtplib
from email.mime.text import MIMEText
fp = open('textfile', 'rb')
msg = MIMEText(fp.read())
fp.close()

me = 'me_email@localhost'
you = 'me_again_email@localhost'
msg['Subject'] = 'The contents of %s' %fp
msg['From'] = me
msg['To'] = you

s = smtplib.SMTP('localhost')
s.sendmail(me, [you], msg.as_string())
s.quit()

我还没有配置sendmail,所以它会报错。不过因为我只是想测试我的网络服务,所以我并不在意sendmail现在能不能发送邮件。我的服务是从数据库中提取一些记录,然后发送邮件给用户。所以我想知道的是,Python从数据库获取数据并发送邮件的这个连接是否正常。我希望能在本地收到通过脚本发送的邮件。

1 个回答

2

要发送电子邮件,你需要设置一个SMTP服务器。如果没有配置这个服务器,就无法发送邮件。关于如何使用Python的smtplib模块,你可以在pymotw.comtutorialspoint.comPython文档上找到更多信息。

撰写回答