Lendo emails do Outlook com Python através do MAPI

Estou tentando escrever um programa curto que lerá o conteúdo dos emails em uma pasta no meu perfil do Exchange / Outlook para que eu possa manipular os dados. No entanto, estou tendo problemas para encontrar muitas informações sobre python e integração do Exchange / Outlook. Muita coisa é muito antiga / não possui documentos / não foi explicada. Eu tentei vários trechos, mas parece estar recebendo os mesmos erros. Eu tentei o código de Tim Golden:

import win32com.client

session = win32com.client.gencache.EnsureDispatch ("MAPI.Session")

#
# Leave blank to be prompted for a session, or use
# your own profile name if not "Outlook". It is also
# possible to pull the default profile from the registry.
#
session.Logon ("Outlook")
messages = session.Inbox.Messages

#
# Although the inbox_messages collection can be accessed
# via getitem-style calls (inbox_messages[1] etc.) this
# is the recommended approach from Microsoft since the
# Inbox can mutate while you're iterating.
#
message = messages.GetFirst ()
while message:
    print message.Subject
    message = messages.GetNext ()

No entanto, recebo um erro:

pywintypes.com_error: (-2147221005, 'Invalid class string', None, None)

Não tenho certeza qual é o nome do meu perfil, então tentei:

session.Logon()

ser solicitado, mas isso também não funcionou (mesmo erro). Também tentei com o Outlook aberto e fechado e nem mudou nada.

questionAnswers(4)

yourAnswerToTheQuestion