Python exchangelib - 将项目标记为已读
Python exchangelib - mark item as read
我正在尝试使用 Python 的 exchangelib 模块在我的邮箱中完成一项任务 - 如果某封电子邮件包含特定主题并具有 'unread' 状态,如何将其移动到文件夹。
while True:
print("Checking inbox...")
for msg in acc.inbox.filter(subject="Kontrol fra EVT...", is_read=False):
if "SOS" in msg.text_body:
pass
else:
msg.is_read = True
print("Moving to EVT folder...")
msg.move(archive)
time.sleep(0.5)
time.sleep(5)
除 msg.is_read = True
部分外,一切似乎都正常。尽管已成功移动到所需文件夹,但邮件仍未读。
我想我在这里漏掉了一些简单的东西。我尝试使用谷歌搜索并使用官方模块的文档,但在这方面一无所获。只能找到一个和我有同样问题的人:
谢谢!
在挖掘模块文件时自己找到了答案。显然你必须在标记后 "save" 项目。
最后我的代码应该是这样的:
while True:
print("Checking inbox...")
for msg in acc.inbox.filter(subject="Kontrol fra EVT...", is_read=False):
if "SOS" in msg.text_body:
pass
else:
msg.is_read = True
msg.save()
print("Moving to EVT folder...")
msg.move(archive)
time.sleep(0.5)
time.sleep(5)
我正在尝试使用 Python 的 exchangelib 模块在我的邮箱中完成一项任务 - 如果某封电子邮件包含特定主题并具有 'unread' 状态,如何将其移动到文件夹。
while True:
print("Checking inbox...")
for msg in acc.inbox.filter(subject="Kontrol fra EVT...", is_read=False):
if "SOS" in msg.text_body:
pass
else:
msg.is_read = True
print("Moving to EVT folder...")
msg.move(archive)
time.sleep(0.5)
time.sleep(5)
除 msg.is_read = True
部分外,一切似乎都正常。尽管已成功移动到所需文件夹,但邮件仍未读。
我想我在这里漏掉了一些简单的东西。我尝试使用谷歌搜索并使用官方模块的文档,但在这方面一无所获。只能找到一个和我有同样问题的人:
谢谢!
在挖掘模块文件时自己找到了答案。显然你必须在标记后 "save" 项目。 最后我的代码应该是这样的:
while True:
print("Checking inbox...")
for msg in acc.inbox.filter(subject="Kontrol fra EVT...", is_read=False):
if "SOS" in msg.text_body:
pass
else:
msg.is_read = True
msg.save()
print("Moving to EVT folder...")
msg.move(archive)
time.sleep(0.5)
time.sleep(5)