Search code examples
pythonoutlookpywin32win32com

Python Crashes when I am trying to access any date related fields in MailItem COM


I am trying to print emails from Outlook using win32com. The only issue is when I am trying to access MailItem.SentOn or MailItem.ReceivedTime, Python crashes with windows showing "Python has stopped working" dialog window. What can be the cause of this issue?

Here is my code:

import win32com
import win32com.client
import os
import sys
import re
from datetime import datetime

outlook = win32com.client.Dispatch("Outlook.Application").GetNamespace("MAPI")
accounts = win32com.client.Dispatch("Outlook.Application").Session.Accounts

inbox = outlook.Folders(accounts[0].DeliveryStore.DisplayName)
folders = inbox.Folders

inbox_messages = folders("Inbox").Items
msg = inbox_messages.GetFirst()

while msg:
    print(msg.SenderEmailAddress)
    print(msg.Subject)
    print (msg.SentOn)
    msg = inbox_messages.GetNext()

I am using Office 365 and Python 3.7.0 on Windows 10.

Error Window


Solution

  • I have this same issue. My script works fine in Python 3.6.5, but fails in 3.7.0