I have created a rule in Outlook to move all incoming messages from a particular sender to a subfolder in my Inbox.Like -
Inbox
- Subfolder
I wrote a piece of code
import win32com.client
outlook = win32com.client.Dispatch("Outlook.Application").GetNamespace("MAPI")
inbox = outlook.GetDefaultFolder(6) #6 = Inbox (without mails from the subfolder)
messages = inbox.Items
message = messages.GetLast()
body_content = message.body
print body_content #Sometimes has parsing error due to different encoding format
How can I
1) Read the mails in this particular folder inside Inbox
2) Take care of error like UnicodeEncodeError: 'charmap' codec can't encode - character maps to
print (u'\2109')
issues this error too.
1. Get in to the email folder which you want to start searching within as well as its subfolders. 2. Click on the Instant Search box to activate the Search Tools, type the search condition in the box, and then click All Subfolders in the Scope group under Search tab.
outlook.GetDefaultFolder(6) is "Inbox" position by default. You need to traverse the list of folders in it, so try this
inbox = outlook.GetDefaultFolder(6).Folders.Item("Your_Folder_Name")
u'\2109'
looks a lot like UTF-8 encoding.
So print(body_content.encode("utf-8"))
will do the trick.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With