簡體   English   中英

在 smtplib 發送的郵件中顯示用戶名

[英]Display username in the mail sent from smtplib

我編寫了一個 python 腳本來使用 smtplib 發送郵件。 一切正常,除了當用戶收到郵件時,他看不到我的谷歌帳戶名,而是獲取郵件 ID。 有沒有辦法做到這一點?

我想它必須在這里做點什么,但我不確定。

msg = MIMEMultipart()

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

在此處輸入圖像描述

在此處輸入圖像描述

第一個圖像是使用 smtplib 發送的。 沒有用戶名。

第二個從gmail正常發送。

您需要同時提供 email 地址和帳戶名稱才能執行此操作。

email.utils.formataddr function 可用於格式化數據:

>>> 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))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM