Python:如何将“to”更改为smtp/MIME 脚本中的字段而不是添加新字段?

发布于 2024-11-03 16:03:15 字数 451 浏览 4 评论 0原文

这是我正在使用的代码的摘录。我正在循环查看添加电子邮件的部分;我的问题不是更改每个循环上的“to”字段,而是附加“to”数据。显然这会导致一些问题,因为 to 字段最终会变得越来越长。我尝试了 msgRoot.del_param('To') 无济于事。我什至尝试设置 msgRoot['To'] 来引用列表的第一个索引,这样我就可以简单地更改该列表项的值(也不起作用)。

from email.MIMEMultipart import MIMEMultipart
msgRoot = MIMEMultipart('related')
msgRoot['To'] = '[email protected]'

Here's an excerpt from the code I'm using. I'm looping through the part that adds the email; my problem is rather than changing the "to" field on each loop, it is appending the "to" data. Obviously this causes some issues, since the to field ends up getting longer and longer. I tried msgRoot.del_param('To') to no avail. I even tried setting the msgRoot['To'] to refer to the first index of a list so I could simply change the value of that list item (also didn't work).

from email.MIMEMultipart import MIMEMultipart
msgRoot = MIMEMultipart('related')
msgRoot['To'] = '[email protected]'

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

西瑶 2024-11-10 16:03:15

您可以使用 replace_header方法

replace_header(_name,_value)

替换标题。替换消息中找到的与 _name 匹配的第一个标头,保留标头顺序和字段名称大小写。如果没有找到匹配的标头,则会引发 KeyError。

2.2.2 版本中的新增功能。

例如,

if msgRoot.has_key('to'):
    msgRoot.replace_header('to', someAdress)
else:
    msgRoot['to'] = '[email protected]'

You can use the replace_header method.

replace_header(_name, _value)

Replace a header. Replace the first header found in the message that matches _name, retaining header order and field name case. If no matching header was found, a KeyError is raised.

New in version 2.2.2.

For example,

if msgRoot.has_key('to'):
    msgRoot.replace_header('to', someAdress)
else:
    msgRoot['to'] = '[email protected]'
情徒 2024-11-10 16:03:15

我只是这样做:

del msgRoot["To"]
msgRoot["To"] = "[email protected]"

我的自制博客平台 http://www.royalbarrel.com/ 存储其博客文章这样,就可以使用 Mime 消息了。效果很好。如果有人添加评论,我会将消息升级为 MimeMultipart,并将第一个有效负载作为实际的博客文章,后续有效负载作为评论。

I just do this:

del msgRoot["To"]
msgRoot["To"] = "[email protected]"

My homebrewed blog platform at http://www.royalbarrel.com/ stores its blog posts this way, using Mime messages. Works great. And if someone adds a comment I upgrade the message to MimeMultipart and have the first payload be the actual blog post and subsequent payloads be the comments.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文