Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Python创建草稿电子邮件';s电子邮件生成器包_Python_Python 3.x_Email - Fatal编程技术网

使用Python创建草稿电子邮件';s电子邮件生成器包

使用Python创建草稿电子邮件';s电子邮件生成器包,python,python-3.x,email,Python,Python 3.x,Email,我目前正在使用以下代码使用Python生成电子邮件: 来自电子邮件导入生成器 从email.mime.multipart导入MIMEMultipart 从email.mime.text导入MIMEText def Create_Email(): msg=MIMEMultipart('alternative') msg['Subject']=“我的主题” msg['To']='test@gmail.com' html=”“”\ 你好,世界 """ part=MIMEText(html,'html'

我目前正在使用以下代码使用Python生成电子邮件:

来自电子邮件导入生成器
从email.mime.multipart导入MIMEMultipart
从email.mime.text导入MIMEText
def Create_Email():
msg=MIMEMultipart('alternative')
msg['Subject']=“我的主题”
msg['To']='test@gmail.com'
html=”“”\
你好,世界
"""
part=MIMEText(html,'html')
附加信息(部分)
outfile\u name=r'C:\Downloads\email\u sample.eml'
打开(输出文件名称“w”)作为输出文件:
发电机=发电机。发电机(输出文件)
发电机扁平化(味精)
创建电子邮件()
但当我用outlook打开文件时,它显示为一封已发送的电子邮件:

如何更改此设置,以便保存的文件将被视为草稿,我仍然可以编辑并发送该草稿?像这样:


如果
email.generator
无法做到这一点,我很乐意使用其他软件包。

我创建了一封短邮件,并将其保存到草稿文件夹中。但是,执行代码时需要打开outlook,否则它会要求您提供outlook配置文件

但是,这使用了与您不同的模块

import win32com.client as win32

def create_mail(text, subject, recipient, send=True):

    outlook = win32.Dispatch('outlook.application')
    mail = outlook.CreateItem(0)
    mail.To = recipient
    mail.Subject = subject
    mail.HtmlBody = text
    if send:
        mail.send()
    else:
        mail.save()


create_mail("Hello World!", "Test-Mail", "mail.adresss@gmail.de", send=False)

我创建了一封短邮件,并将其保存到草稿文件夹中。但是,执行代码时需要打开outlook,否则它会要求您提供outlook配置文件

但是,这使用了与您不同的模块

import win32com.client as win32

def create_mail(text, subject, recipient, send=True):

    outlook = win32.Dispatch('outlook.application')
    mail = outlook.CreateItem(0)
    mail.To = recipient
    mail.Subject = subject
    mail.HtmlBody = text
    if send:
        mail.send()
    else:
        mail.save()


create_mail("Hello World!", "Test-Mail", "mail.adresss@gmail.de", send=False)

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

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

msg.add_头('X-Unsent','1')

它会将电子邮件标记为未发送,即草稿

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

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

msg.add_头('X-Unsent','1')
它会将电子邮件标记为未发送,即草稿