1

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

使用保存为 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脚本开始解析 mbox 文件,转换为 csv

我感谢提供的任何帮助。

2016 年 4 月 17 日编辑:

感谢您删除 python3 标签。我发现了我的错误。mail.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']
            ]
                    )

感谢大家的关心和帮助。

4

0 回答 0