Находясь в отпуске, решил навести порядок в своем Outlook, ибо размер основного *.pst файла вырос до 14 Гб. Если бы не Intel SSD, это все вообще бы не ворочалось, но даже с SSD начало подтормаживать в последнее время.
Пока рассовывал почту туда-сюда, пару раз ошибся и скопировал в одну папку несколько тысяч писем дважды. Outlook не обращается с письмами как с файлами, так что перезаписывания не происходит, а происходят дубликаты. Ручная вычистка дубликатов была бы, мягко говоря, утомительной и туповатой работой, посему было решено автоматизировать процесс связкой Python + Outlook IDispatch.
Код -
здесь. Для отслеживания дубликатов используется кортеж из (MD5(Body), Subject, ReceiveTimestamp). Запускать для папок, в которые на лету приходит почта не рекомендуется.