Из вашего примера - не ясно, аутентифицированы ли вы или нет ...
Если да, то вы сможете составить список папок почтового ящика. В случае ниже - вы можете получить доступ к почтовому ящику и затем перечислить подпапки:
from O365 import Account, Connection, MSGraphProtocol, Message, MailBox, oauth_authentication_flow
scopes=['basic', 'message_all']
credentials=(<secret>, <another secret>)
account = Account(credentials = credentials)
if not account.is_authenticated: # will check if there is a token and has not expired
account.authenticate(scopes=scopes)
account.connection.refresh_token()mailbox = account.mailbox()
inbox = mailbox.get_folder(folder_name='Inbox')
child_folders = inbox.get_folders(25)
for folder in child_folders:
print(folder.name, folder.parent_id)
Эта часть позволит вам выводить список папок (а также сообщений).
Если я посмотрю на ваш код - похоже, вы пытаетесь сделать и то и другое?
Попробуйте сделать что-то вроде следующего, чтобы получить представление о подкачке через ваш почтовый ящик:
for message in inbox.get_messages(5):
if message.subject == 'test':
print(message.body)
Обратите внимание, что я перебираю первые 5 сообщений в папке входящих сообщений в поисках сообщения с темой 'test'. Если он находит сообщение - то печатает тело.
Надеюсь, это прольет немного света.