如何在Python + O365中实现持续的电子邮件监控

问题描述 投票:0回答:1

我成功创建了一个 Python + O365 应用程序,可以登录我的电子邮件并在控制台中打印电子邮件。这是代码:

import O365

from O365 import Connection, FileSystemTokenBackend

from O365.account import Account

tokenstorage = FileSystemTokenBackend(token_path='XXX', token_filename='XXX')

scopes_graph  = ['User.Read', 'Mail.ReadWrite', 'Mail.Read', 'OFFLINE_ACCESS']
credentials = ('XXX', 'XXX')

account = Account(credentials, tenant_id='XXX', scopes=scopes_graph, token_backend=tokenstorage)

if not account.is_authenticated:
    account.authenticate()

mailbox = account.mailbox()

inbox = mailbox.inbox_folder()
query = mailbox.new_query()

query = query.on_attribute('Subject').contains('Test')

for message in inbox.get_messages(limit=10, query=query):
    print(message._Message__created, message.sender, message)

问题是,我希望程序能够连续运行——也许通过某种无限循环。如果它能够“等待并监听”电子邮件,那就最好了,这样每当我收到新电子邮件时,它就会在控制台中 24/7 打印新行。大家觉得这可行吗?怎么办?

python azure-active-directory microsoft-graph-api office365 python-o365
1个回答
0
投票

每当我收到新电子邮件时,它都会在控制台 24/7 中打印新行。

您可以订阅通知,请参阅 Microsoft Graph API 更改通知了解更多信息。

© www.soinside.com 2019 - 2024. All rights reserved.