Экспорт темы и даты MBOX в CSV с использованием Python
Формат экспорта для 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". Впоследствии результатом стал файл CSV с 0 байтами.
Мой навык очень прост. Я начал со скрипта из скриптов github для анализа файла mbox, конвертирования в csv
Я ценю любую помощь, оказанную.
4-17-2016 РЕДАКТИРОВАТЬ:
Спасибо за удаление тега python3. Я обнаружил свою ошибку. Для параметра mailbox.mbox требуется следующий путь:
for message in mailbox.mbox('c:\temp\\python\inbox.mbox'):
Хорошо работать. Однако я обнаружил, что при работе с файлами MBOX, созданными google.com/takeout, одни и те же электронные письма появлялись в нескольких архивах MBOX. Поэтому я использовал следующий скрипт для каждого файла MBOX, чтобы добавить уникальный идентификатор сообщения, а затем удалил дублирующиеся строки другим инструментом.
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']
]
)
Спасибо всем за интерес и помощь.