python - 使用python读取单个电子邮件链中的电子邮件数量
问题描述
我正在阅读收件箱中的未读电子邮件。我正在获取未读电子邮件的总数,但我无法单独获取单个电子邮件链中的电子邮件数量。例如。有三封未读邮件(一封有 10 封邮件链,一封有 4 封邮件链,最后一封有 5 封邮件链)。我将输出作为 19 封未读电子邮件进行更正,但将主题存储在 pandas 数据框中,然后仅获取唯一值,这给了我 3 封未读电子邮件。但我仍然无法获得单个电子邮件链中的电子邮件数量,即 10、4 和 5。
我正在使用 imaplib 来获取电子邮件。
mail = imaplib.IMAP4_SSL('imap.gmail.com')
(retcode, capabilities) = mail.login(username,password)
mail.select('Inbox')
n_unread_emails=0
(retcode, messages) = mail.search(None, '(UNSEEN)')
if retcode == 'OK':
for num in messages[0].split() :
n_unread_emails = n_unread_emails + 1
typ, data = mail.fetch(num,'(RFC822)')
for response_part in data:
if isinstance(response_part, tuple):
original = email.message_from_string(response_part[1])
alerttrack = alerttrack.append({'Subject' : str(original['Subject']).replace('[Check_mk Alert RCA] ','')}, ignore_index = True)
n_unread_emails = alerttrack.Subject.nunique(dropna = True)
print "Number of Unread Mails are " + str(n_unread_emails)
这就是我所说的单个电子邮件链的意思。第一条链有 4 封电子邮件,第二条有 1 封,第三条有 1 封,最后一条有 4 封。我希望输出为 4,1,1,4。
解决方案
推荐阅读
- php - 获取错误数据
- android - 如何在 Flutter 中实现实时人脸解锁功能
- c++ - 在 C++ 中减慢 SHA-256?
- c++ - std::set::emplace_hint() 实际上如何加速插入过程?
- docker - 如何设置端口以将静态网站作为 nginx docker 容器运行?
- php - 将图像从 localhost 传输到 cpanel Web 服务器的代码
- c# - 如何将浮点类型四舍五入到小数点后六位
- javascript - 奇怪的断点行为(移动到不同的位置,并且出现了更多的断点)
- jquery - flatpickr maxDate 配置
- java - 无法为 /com/sun/jna/win32-x86/jnidispatch.dll 库创建临时文件:系统找不到路径