我知道如何使用python3的 email.mime.multipart.MIMEMultipart
类创建各种多部分电子邮件。
我需要在某些现有的多部分消息上进行"电子邮件外科手术"(其中包含各种MIME零件),并删除和添加一些新零件而不更改电子邮件的标题。在标题中,有以下样品标头:
Content-Type: multipart/mixed;
boundary="ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ"
...使用ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ
边界来分开现有消息部分。
我想使用email.mime.multipart.MIMEMultipart
工具来创建具有修改部分的新车身,我想在这些部分之间使用相同的ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ
边界,因此我不必返回并更改已经存在的Content-Type
标头在消息的原始标题中。
如果我可以在创建此多部分时要使用的边界的确切文本,但是在Python3中,email.mime.multipart.MIMEMultipart
软件包似乎总是会创建自己的,随机生成的边界字符串。p>在Python3中,有什么方法可以告诉email.mime.multipart.MIMEMultipart
软件使用我提供的边界字符串?
如果没有,我可以通过取新生成的消息主体,提取其新的边界字符串来解决此问题(我将称为" newboundary",然后用原始边界代替它(我将称为"原始界限"),如下:
msgbodytext = msgbodytext.replace(newboundary, originalboundary)
,但如果可能的话,我不愿意这样做。
关于如何告诉email.mime.multipart.MIMEMultipart
使用我指定的边界字符串的任何想法?谢谢。
我最初误解了文档,现在我重新阅读了这些文档,我发现这很容易。
要将自己的边界设置为originalboundary
变量的值,我只需要这样做:
msg = email.mime.multipart.MIMEMultipart(boundary=originalboundary)