spacepaste

  1.  
  2. def convert_maildir(path):
  3. """Convert a maildir to mbox.
  4. Replicates http://docs.python.org/py3k/library/mailbox.html#examples for maildir2mbox"""
  5. info("converting %s" %path)
  6. destination = mailbox.mbox('~/inbox.mbox')
  7. destination.lock()
  8. for message in mailbox.Maildir(path):
  9. info("message type = %s" %type(message))
  10. destination.add(mailbox.MaildirMessage(message))
  11. destination.close()
  12. 20 <modu: Namespace(files=['Mail/inbox/'], log_to_file=False, verbose=2)
  13. 20 find_: filename = Mail/inbox/
  14. 20 find_: appending Mail/inbox/
  15. 20 conve: converting /home/reagle/Mail/inbox
  16. 20 conve: message type = <class 'mailbox.MaildirMessage'>
  17. Traceback (most recent call last):
  18. File "/home/reagle/bin/kmail2mbox.py", line 75, in <module>
  19. convert_maildir(maildir)
  20. File "/home/reagle/bin/kmail2mbox.py", line 43, in convert_maildir
  21. destination.add(mailbox.MaildirMessage(message))
  22. File "/usr/lib/python3.2/mailbox.py", line 595, in add
  23. self._toc[self._next_key] = self._append_message(message)
  24. File "/usr/lib/python3.2/mailbox.py", line 733, in _append_message
  25. offsets = self._install_message(message)
  26. File "/usr/lib/python3.2/mailbox.py", line 805, in _install_message
  27. self._dump_message(message, self._file, self._mangle_from_)
  28. File "/usr/lib/python3.2/mailbox.py", line 215, in _dump_message
  29. gen.flatten(message)
  30. File "/usr/lib/python3.2/email/generator.py", line 88, in flatten
  31. self._write(msg)
  32. File "/usr/lib/python3.2/email/generator.py", line 141, in _write
  33. self._write_headers(msg)
  34. File "/usr/lib/python3.2/email/generator.py", line 373, in _write_headers
  35. self.write(header.encode(linesep=self._NL)+self._NL)
  36. File "/usr/lib/python3.2/email/header.py", line 317, in encode
  37. formatter.feed(lines[0], charset)
  38. IndexError: list index out of range
  39.