使用 Python 的 email.generator 包创建电子邮件草稿

2024-05-04

我目前正在使用此代码通过 Python 生成电子邮件:

from email import generator
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText

def Create_Email():
    msg            = MIMEMultipart('alternative')
    msg['Subject'] = 'My Subject'
    msg['To']      = '[email protected] /cdn-cgi/l/email-protection'

    html = """\
    <html>
        <head></head>
        <body>hello world</body>
    </html>"""

    part = MIMEText(html, 'html')
    msg.attach(part)

    outfile_name = r'C:\Downloads\email_sample.eml'
    with open(outfile_name, 'w') as outfile:
        gen = generator.Generator(outfile)
        gen.flatten(msg)

Create_Email()

但是当我用 Outlook 打开该文件时,它显示为已经发送 email:

     enter image description here

我怎样才能改变这个,以便保存的文件将被视为draft,我仍然可以编辑然后发送吗?就像这样:

      enter image description here

If email.generator无法做到这一点,我很乐意使用替代包。


我想在创建电子邮件/草稿时避免依赖 Outlook。

我最终找到的解决方案非常简单;只需添加此标头:

msg.add_header('X-Unsent', '1')

它将把电子邮件标记为unsent,即draft.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 Python 的 email.generator 包创建电子邮件草稿 的相关文章

  • VSCode:调试配置中的 Python 路径无效

    对 Python 和 VSCode 以及 stackoverflow 非常陌生 直到最近 我已经使用了大约 3 个月 一切都很好 当尝试在调试器中运行任何基本的 Python 程序时 弹出窗口The Python path in your
  • 在 Pandas DataFrame Python 中添加新列[重复]

    这个问题在这里已经有答案了 例如 我在 Pandas 中有数据框 Col1 Col2 A 1 B 2 C 3 现在 如果我想再添加一个名为 Col3 的列 并且该值基于 Col2 式中 如果Col2 gt 1 则Col3为0 否则为1 所以
  • 用于运行可执行文件的python多线程进程

    我正在尝试将一个在 Windows 上运行可执行文件并管理文本输出文件的 python 脚本升级到使用多线程进程的版本 以便我可以利用多个核心 我有四个独立版本的可执行文件 每个线程都知道要访问它们 这部分工作正常 我遇到问题的地方是当它们
  • 从 Python 中的类元信息对 __init__ 函数进行类型提示

    我想做的是复制什么SQLAlchemy确实 以其DeclarativeMeta班级 有了这段代码 from sqlalchemy import Column Integer String from sqlalchemy ext declar
  • 在 Python 类中动态定义实例字段

    我是 Python 新手 主要从事 Java 编程 我目前正在思考Python中的类是如何实例化的 我明白那个 init 就像Java中的构造函数 然而 有时 python 类没有 init 方法 在这种情况下我假设有一个默认构造函数 就像
  • 如果值在列表 pandas 中,则布尔向量

    在 pandas 中创建布尔向量来测试值很容易 例如 DF a gt 10 但是你怎么写 DF a in list 根据某个列表或其他列表中系列中每个值的成员资格生成布尔向量 我收到一个值错误 我知道我可以非常简单地循环数据 但是不必这样做
  • 如何将列表列表中的元素转换为小写? [复制]

    这个问题在这里已经有答案了 我正在尝试将列表列表的元素转换为小写 这就是看起来的样子 print dataset It went Through my shirt And came out The back and hit the kid
  • 如何添加 id 列来标识 read_html() 表?

    考虑以下站点 site1 http pastebin com vpnGqn5X site2 http pastebin com FbAFGbfR site3 http pastebin com LqZWxFSP 其中有许多不同的表 我在用读
  • 如何向 scikit-learn KD 树添加/删除数据点?

    我想知道是否可以在创建 scikit learn KDTree 实例后添加或删除数据点 例如 from sklearn neighbors import KDTree import numpy as np X np array 1 1 2
  • 如何在 py_function 之后重塑(图像,标签)数据集

    我正在尝试读取自定义映射数据集进行训练 但是在使用 py function 映射数据集后 我得到了未知的形状 例如 def process path file path label get label file path img tf io
  • Plotly Python - 热图 - 更改悬停文本 (x,y,z)

    我有一个用 python 绘制的热图 悬停文本工作完美 但它的每个变量都带有 x y 或 z 前缀 如下所示 有什么办法可以改变这个 即x FY y Month 和z Count 这是生成上面热图的代码 dfreverse df hml v
  • 在python中实现COM接口类型库

    我有一个插件 我正在尝试为我工作的公司的应用程序创建一个示例 我正在尝试用 Python 编写这个插件 插件架构的工作方式是插件需要实现在提供的 COM 类型库中定义的接口 因此 它是该类型库的 COM 客户端 并最终通过应用程序为其提供后
  • Python 和图形数据库。使用 java lib 包装器还是 REST api?

    我想问你在Python中使用图数据库 Neo4j 的最佳方法 你觉得我应该使用 neo4j python embedded neo4j python 嵌入式 http docs neo4j org chunked milestone pyt
  • 如何在 Tensorflow Keras 中规范化我的图像数据

    如前所述 我正在尝试在训练模型之前标准化我的数据集 我正在使用tf keras preprocessing image ImageDataGenerator之前执行此操作 train data tf cast train data tf f
  • Flask-login:无法理解它是如何工作的

    我试图理解如何Flask Login https flask login readthedocs org en latest works 我在他们的文档中看到他们使用预先填充的用户列表 我想使用数据库存储的用户列表 但是 我不明白其中的一些
  • Python str.format() 方法的默认 kwarg 值

    我希望尝试使现有字符串的复数化尽可能简单 并且想知道是否有可能得到str format 在查找 kwargs 时解释默认值 这是一个例子 string number of sheep sheep has run away dict comp
  • 用于将 cython 中的许多 C++ 类包装到单个共享对象的项目结构

    我在文档 邮件列表和这个问题在这里 https stackoverflow com questions 10300660 cython and distutils 但我想得到一个更直接的答案来解决我的具体情况 我正在通过尝试一点一点地包装我
  • 如何查看Databricks中的所有数据库和表

    我想列出 Azure Databricks 中每个数据库中的所有表 所以我希望输出看起来像这样 Database Table name Database1 Table 1 Database1 Table 2 Database1 Table
  • Django 代理模型的继承和多态性

    我正在开发一个我没有启动的 Django 项目 我面临着一个问题遗产 我有一个大模型 在示例中简化 称为MyModel这应该代表不同种类的物品 的所有实例对象MyModel应该具有相同的字段 但方法的行为根据项目类型的不同而有很大差异 到目
  • 将数据从 python pandas 数据框导出或写入 MS Access 表

    我正在尝试将数据从 python pandas 数据框导出到现有的 MS Access 表 我想用已更新的数据替换 MS Access 表 在 python 中 我尝试使用 pandas to sql 但收到错误消息 我觉得很奇怪 使用 p

随机推荐