python中win32api模块_在python 3中使用win32api / com模块时,有没有办法解决unicode问题?-问答-阿里云开发者社区-阿里云...

我正在浏览收件箱中的电子邮件并检查特定的单词集。它适用于大多数电子邮件,但其中一些不解析。我查看了破碎的电子邮件。

print (msg.Body.encode('utf8'))

我的问题消息都以b'开头。像这样

b'xe6xa0xbcxe6xb5xb4xe3xb9xacxe6xa0xbcxe6x85xa5xe3xb9xa4xe0xa8x8dxe6xb4xbcxe7x91xa5xe2x81xa1xe7x91x

我认为这是强制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有一种方式来阅读它,这样我就可以找到我正在寻找的文本。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值