Skip to main content
 首页 » 编程设计

Python smtplib之发送邮件后没有收件人

2025年05月04日22zhoujg

我最近写了一个脚本,如果我想监控的网站使用 smtplib 发生了变化,它会向我发送一封电子邮件。该程序有效,我收到了电子邮件,但是当我查看已发送的电子邮件时(因为我正在从同一帐户向自己发送电子邮件),它说没有收件人或“收件人:”地址,只有密件抄送我希望将电子邮件发送到的地址。这是 smtplib 的一个特性吗——它实际上并不添加“收件人:”地址,只添加密件抄送地址?代码如下:

if (old_source != new_source): 
 
# now we create a mesasge to send via email 
fromAddr = "example@gmail.com" 
toAddr = "example@gmail.com" 
msg = "" 
 
# smtp login 
username = "example@gmail.com" 
pswd = "password" 
 
# create server object and login to the gmail smtp 
server = smtplib.SMTP_SSL("smtp.gmail.com", 465) 
server.login(username, pswd) 
server.sendmail(fromAddr, toAddr, msg) 
server.quit() 

请您参考如下方法:

按如下方式更新您的代码即可解决问题:

if (old_source != new_source): 
 
# now we create a mesasge to send via email 
fromAddr = "example@gmail.com" 
toAddr = "example@gmail.com" 
msg = "" 
 
# smtp login 
username = "example@gmail.com" 
pswd = "password" 
 
# create server object and login to the gmail smtp 
 
server = smtplib.SMTP_SSL("smtp.gmail.com", 465) 
header = 'To:' + toAddr + '\n' + 'From: ' + fromAddr + '\n' + 'Subject:testing \n' 
msg = header + msg 
server.login(username, pswd) 
server.sendmail(fromAddr, toAddr, msg) 
server.quit()