微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在从 smtplib 发送的邮件中显示用户名

如何解决在从 smtplib 发送的邮件中显示用户名

我编写了一个 python 脚本来使用 smtplib 发送邮件。 一切正常,除了当用户收到邮件时,他无法看到我的 google 帐户名,而是获取邮件 ID。有什么办法可以解决这个问题吗?

我想它必须在这里做一些事情,但我不确定。

msg = MIMEMultipart()

msg['From'] = from_addr
msg['To'] = ','.join(recipients_addr)
msg['Subject'] = subject
msg.attach(MIMEText(body,'plain'))
return msg

enter image description here

enter image description here

一个图像是用 smtplib 发送的图像。没有用户名

第二个是从 gmail 正常发送的。

解决方法

您需要同时提供电子邮件地址和帐户名称才能执行此操作。

email.utils.formataddr 函数可用于格式化数据:

>>> from email import utils
>>> utils.formataddr(('Jane Smith','jsmith@example.com'))
'Jane Smith <jsmith@example.com>'

在问题的代码中,你会做类似的事情

from_addr = 'praneeth.vasarla@example.com'
from name = 'Praneeth Vasarla'
msg['from'] = formataddr((from_name,from_addr))

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。