我正在使用exchangelib并运行良好,但是当我尝试导出项目信息时,例如:

data= ("Inbox", item.datetime_received, item.sender, item.subject)


当我使用打印时,所有项目均按预期显示,每行电子邮件均以新行显示:


  收件箱2019-10-15,杰克,新电子邮件信息
  
  收件箱2019-10-16,汤姆,你好
  
  收件箱2019-10-17,安娜,测试电子邮件


当我尝试使用以下代码将其写入CSV时:

with open("C:/mail_export.csv",'w',newline='\n',encoding="utf-8") as f:
    for item in inbox_folder.all().order_by('-datetime_received'):
        data=("Inbox", item.datetime_received, item.sender, item.subject)
        f.write(str(data))


我在一排长行中获得了所有信息,但我无法保存此信息,因此每个项目都从新行开始。现在看起来像这样:


  收件箱2019-10-15,杰克,新电子邮件信息收件箱2019-10-16,汤姆,你好收件箱2019-10-17,安娜,测试电子邮件


我做错了什么?打印时如何以相同的方式编写这种显示方式?任何帮助将不胜感激!

最佳答案

认为您非常亲密,我无法复制您的问题。但是我建议您在写函数中添加\ n,因为只有这样,代码才有可能将其写到新行中。根据您的输出,所有其他步骤均已正确执行

关于python - Python exchangelib-将项目从收件箱文件夹导出到CSV,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58409983/

10-12 22:24