我在Python中编写了一些代码,使用win32com.client读取Outlook文件夹中的电子邮件。我可以轻松阅读它,内置了所有逻辑,现在想要在迭代所有消息时编写Excel文件。这是我遇到问题的地方。
我最近的尝试使用了xlwt,但我愿意使用任何东西。我遇到的问题是,当我尝试使用发件人或Outlook电子邮件中的日期编写单元格时,我收到以下错误:
异常:意外的数据类型
有谁知道如何解决这个问题/解决它?
我是否必须将.Sender,.Date实例转换为其他形式?
以下快速示例:
import win32com.client
import xlwt
outlook = win32com.client.Dispatch("Outlook.Application").GetNamespace("MAPI")
inbox = outlook.GetDefaultFolder(6)
book = xlwt.Workbook(encoding="utf-8")
sheet = book.add_sheet("New Sheet")
for folder in inbox_folders:
fold = folder.Items
for messages in fold:
date = fold.ReceivedTime
sender = fold.Sender
sheet.write(1,0,date)
sheet.write(2,0,sender)
答案 0 :(得分:4)
将sheet.write(2,0,sender)
替换为sheet.write(2,0,sender.Name)
或sheet.write(2,0,sender.Address).