使用Python将MBOX主题和日期导出为CSV

时间:2016-04-16 05:35:20

标签: python python-2.7 export-to-csv mbox

Gmail的导出格式为MBOX。我需要创建一个包含四列的CSV文件,日期,主题,发件人和&收件人使用python。首先,我使用下面的脚本来获得两列(日期和主题)

使用以下脚本保存为mbox_parser.pl:

,我的努力失败了
import mailbox
import csv

writer = csv.writer(open("clean_mail.csv", "wb"))
for message in mailbox.mbox('your_mbox_name'):
    writer.writerow([message['subject'], message['from'], message['date']])

我使用命令行“python mbox_parser.pl”。随后,结果是一个0字节的CSV文件。

我的技能非常基础。我从github scripts to parse mbox file, convert to csv

开始编写脚本

我感谢任何帮助。

2016年4月17日编辑:

感谢您删除python3标记。我发现了我的错误。 mailbox.mbox的参数需要一个路径如下:

for message in mailbox.mbox('c:\temp\\python\inbox.mbox'):

运作良好。但是,我确实发现在使用google.com/takeout创建的MBOX文件时,同样的电子邮件出现在多个MBOX存档中。因此,我使用以下脚本为每个MBOX文件添加一个唯一的消息ID,然后使用不同的工具删除重复的行。

import mailbox
import csv

writer = csv.writer(open("inbox.csv", "wb"))
for message in mailbox.mbox('c:\\temp\\python\\inbox.mbox'):
writer.writerow([

            message['Date'],
            message['Subject'],
            message['From'],
            message['To'],
            message['Message-Id']
            ]
                    )

感谢大家的关心和帮助。

0 个答案:

没有答案