Python邮件发送:完美呈现发件人姓名与邮箱地址
本文将指导您如何在Python邮件发送中,准确显示发件人姓名和邮箱地址,避免出现主机名等错误信息。 之前的代码尝试使用msg['from'] = "xyz abc"设置发件人信息,结果导致发件人字段显示为奇怪的机器主机名,而非预期的“xyz abc”。
问题在于msg['from']字段的设置方法。仅仅设置姓名是不够的,必须同时包含邮箱地址,并采用特定的格式:“显示名称 ”。
解决方法是修改msg['from']的赋值语句。将msg['from'] = "xyz abc"替换为msg['from'] = "xyz abc
以下是一个修正后的代码示例,演示如何正确设置发件人信息:
import smtplib
from email.mime.text import MIMEText
sender = 'sender@sender.com'
def send_email(content, recipients):
msg = MIMEText(content, 'html')
recipients_str = ",".join(recipients)
msg['Subject'] = '测试邮件'
msg['From'] = "XYZ ABC <sender@sender.com>" # 正确的设置方法
msg['To'] = recipients_str
try:
with smtplib.SMTP('localhost') as smtp: # 使用with语句简化代码,确保连接关闭
smtp.sendmail(sender, recipients, msg.as_string())
print("邮件发送成功!")
except smtplib.SMTPException as e:
print(f"邮件发送失败:{e}")
content = """
<p>您好!<br></br>
一切顺利吗?<br></br>
这是您需要的<a href="https://www.php.cn/link/996d38f817b4ba74e4c38fb1286d28ab">链接</a>。
</p>
"""
send_email(content, ['xyz@xyzcom'])
此修正后的代码通过在msg['from']中添加
以上就是Python邮件发送:如何正确设置发件人姓名和邮箱地址?的详细内容,更多请关注知识资源分享宝库其它相关文章!
版权声明
本站内容来源于互联网搬运,
仅限用于小范围内传播学习,请在下载后24小时内删除,
如果有侵权内容、不妥之处,请第一时间联系我们删除。敬请谅解!
E-mail:dpw1001@163.com
发表评论