首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Pythons email.message API,如何删除消息的特定部分

使用Pythons email.message API,如何删除消息的特定部分
EN

Stack Overflow用户
提问于 2013-11-27 16:11:10
回答 1查看 536关注 0票数 1

我有一个不想要的附件电子邮件(在这个特殊情况下PKCS-7签名)。我可以用以下代码检测电子邮件中的签名:

代码语言:javascript
复制
payloads = mail.get_payload()

for index in xrange(len(payloads)):
    if payloads[index].get_content_type() == "application/pkcs7-signature":
        print("Found PKCS-7 Signature", index)

如何从消息中删除这个特定的有效负载?email.message API似乎只有用于读取和写入整个有效负载的方法: get_payload()和set_payload()。这两种方法都不允许指定要读或写什么的有效负载索引。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-11-27 18:59:27

一个可能的解决办法是:

代码语言:javascript
复制
def remove_signature(mail):
    payload = mail.get_payload()
    if isinstance(payload, list):
        for part in payload:
            if part.get_content_type().startswith('application/pkcs7-signature'):
                payload.remove(part)
    return mail
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20247450

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档