python - Python Outlook (MAPI) 获取回复邮件的响应时间
问题描述
我使用的ConversationID
是 中的邮件Inbox
和 中的邮件Sent Items
,假设我们回复的邮件的 ID 相同,并且相同,但问题始于电子邮件链(或回复:邮件又名对话) .
由于 ID 保持不变,而且人们甚至在几天后仍会继续回复,因此执行简单的
datetime - datetime
(具有相同的 ConversationID)会产生诸如 等的-1Day 20:05:01
输出-9Days
。
我只想找到进入收件箱的任何邮件的第一次回复的响应时间。
(抱歉,无法共享代码)。
解决方案
为了从具有完全相同 ConversationID
(由 Outlook 自动生成)的邮件链中获取响应时间,我执行了以下操作:
我已经有两个 Pandas DF(比如说“A”和“B”),每个都有两列,即:
ConversationID
和Time
(用于接收和发送的邮件)。
现在,
在“ConversationID”上创建了一个带有“A”和“B”内部连接的 Pandas DataFrame“C”。(这给了我所有我回复过的邮件)。
将这两列排序
Time
为“升序”。(这会将收到的第一封邮件和第一封邮件回复到顶部)。Time
现在使用条件过滤两列 上的新 DataFrame 'C' ,Replied Mail Time > Received Mail Time
(删除我得到的 -1 天输出)Groupby on
Received Mail Time
and use.first()
(最后给出真实响应时间,经过计算Replied Mail Time - Received Mail Time
)
推荐阅读
- python - 使用 LSTM Keras 的验证结果不佳
- java - How to set nth page's permission and sub permission in hibernate?
- c# - 正确使用 QueueBackgroundWorkItem?
- python-3.x - 控制图形的边缘属性 python igraph
- amazon-dynamodb - 使用 DynamoDB 扫描的 API 超时(1000 条记录,13.25mb 大小)
- selenium - 如何通过 Selenium 使用 xpath 定位元素
- java - 为什么我不能将 Function.identity 称为收集器中的方法引用
- java - a different design pattern for this solution
- linux - 如何在最新的 apache netbeans 11.2 linux 中添加 jar 文件?
- python - Check if user exists with PRAW