title: Is there a way to get around unicode issues when using win32api/com modules in python 3?
body: <p>I've looked around and haven't found anything just yet. I'm going through emails in an inbox and checking for a specific word set. It works on most emails but some of them don't parse. I checked the broken emails using. </p>
  
  <pre><code>print (msg.Body.encode('utf8'))
  </code></pre>
  
  <p>and my problem messages all start with <b>b'</b>. 
  like this </p>
  
  <pre><code>b'\xe6\xa0\xbc\xe6\xb5\xb4\xe3\xb9\xac\xe6\xa0\xbc\xe6\x85\xa5\xe3\xb9\xa4\xe0\xa8\x8d\xe6\xb4\xbc\xe7\x91\xa5\xe2\x81\xa1\xe7\x91\x
  </code></pre>
  
  <p>I think this is forcing python to read the body as bytes but I'm not sure. Either way after the b, no matter what encoding I try I don't get anything but garbage text. </p>
  
  <p>I've tried other encoding methods as well decoding before but I'm just getting a ton of attribute errrors. </p>
  
  <pre><code>import win32api
  import win32com.client
  import datetime
  import os
  import time
  
  
  outlook = win32com.client.Dispatch("Outlook.Application").GetNamespace("MAPI")
  dater = datetime.date.today() - datetime.timedelta(days = 1)
  dater = str(dater.strftime("%m-%d-%Y")) 
  print (dater)
  #for folders in outlook.folders:
  #    print(folders)
  
  Receipt = outlook.folders[8]
  
  print(Receipt)
  
  Ritems = Receipt.folders["Inbox"]
  
  Rmessage = Ritems.items
  
  for msg in Rmessage:
      if (msg.Class == 46 and msg.CreationTime.strftime("%m-%d-%Y") == dater):
          print (msg.CreationTime)
          print (msg.Subject)
          print (msg.Body.encode('utf8'))
  
          print ('..............................')
  </code></pre>
  
  <p>End result is to have the message printed out in the console, or at least give Python a way to read it so I can find the text I'm looking for in the body. </p>