Starý NTB, statisíce zpráv, převod na nový IMAP není moc funkční, protože ten NTB to prostě nedává. Trošku jsem se s tím potrápil, ale nakonec našel super řešení:
Jedinou nevýhodou je, že všechny zprávy označí jako nepřečtené, ale pro obnovu z mrtvolky dobrý 🙂
#!/usr/bin/python3
import mailbox
import sys
import os
mbox_filename = sys.argv[1]
maildir_root_dir_name = sys.argv[2]
mbox = mailbox.mbox(mbox_filename, create=False)
mailbox_name = os.path.basename(mbox_filename)
maildir_dir_name = "/".join((maildir_root_dir_name, mailbox_name))
os.mkdir(maildir_dir_name, mode=0o750)
mdir = mailbox.Maildir(maildir_dir_name, create=True)
os.mkdir("/".join((maildir_dir_name, "cur")), mode=0o750)
os.mkdir("/".join((maildir_dir_name, "new")), mode=0o750)
os.mkdir("/".join((maildir_dir_name, "tmp")), mode=0o750)
count = 0
for x in mbox:
print(x.get_from())
count += 1
if count % 1000 == 0:
print(count)
mdir.add(x)
Stále to nefunguje? Kontaktujte mě!
Jestli řešení, které jsem zde popsal, je příliš složité, nebo nefunguje, prostě mi napište. Identifikujeme spolu problém a domluvíme se na co možná nejefektivnějším řešení.
merlin@lomitkari.cz
tel. 777 864 704