Python 电子邮件消息未在 Outlook 中进行线程处理可能的标题问题?自定义格式或行长可能的解决方案?

问题描述

来自@outlook.com 地址的电子邮件带有以下标题

Message-ID:
 <DM5PR1101MB2074A897F300D11D32C71B75EC049@DM5PR1101MB2074.namprd11.prod.outlook.com>

为了使用 Python 进行响应,我将该消息标识符放在 In-Reply-To 标头中

from email.message import EmailMessage

msg = EmailMessage()
msg['In-Reply-To'] = '<DM5PR1101MB2074A897F300D11D32C71B75EC049@DM5PR1101MB2074.namprd11.prod.outlook.com>'

但是,当我打印此消息时,标题显示如下:

In-Reply-To: =?utf-8?q?=3CDM5PR1101MB2074A897F300D11D32C71B75EC049=40DM5PR11?=
 =?utf-8?q?01MB2074=2Enamprd11=2Eprod=2Eoutlook=2Ecom=3E?=

当它到达 Outlook 时,它不会与原始邮件放在同一个对话线程中。

有人知道为什么会发生这种情况和/或知道任何解决方法吗?

我怀疑发生这种情况是因为 Python 试图将标头拆分为多行,因为该标头高于 RFC 指定的行长度,并且当它拆分为多行时,每行都以 '?utf-8?q 开头并进行转换< 字符到 ?=3C 等......而 Outlook 期望标题的格式为

In-Reply-To': 
 <DM5PR1101MB2074A897F300D11D32C71B75EC049@DM5PR1101MB2074.namprd11.prod.outlook.com>'

也许如果有人知道如何强制标头采用这种格式就足够了。

任何帮助将不胜感激:)

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...