我环顾四周,还没找到任何东西。我正在浏览收件箱中的电子邮件并检查特定的单词集。它适用于大多数电子邮件,但其中一些不解析。我查看了破碎的电子邮件。
print (msg.Body.encode('utf8'))
我的问题消息都以b'开头。像这样
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
我认为这是强制python将字体读取为字节,但我不确定。在b之后的任何一种方式,无论我尝试什么编码,我都不会得到任何东西,除了垃圾文本。
我以前尝试过其他编码方法以及解码,但我只是得到了大量的属性错误。
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 ('..............................')
最终的结果是在控制台中打印出消息,或者至少让Python有一种方式来阅读它,这样我就可以找到我正在寻找的文本。





