18.5. mhlib — Access to MH mailboxes

Deprecated since version 2.6: The mhlib module has been removed in Python 3. Use the mailbox instead.

The mhlib module provides a Python interface to MH folders and their contents.

The module contains three basic classes, MH, which represents a particular collection of folders, Folder, which represents a single folder, and Message, which represents a single message.

class mhlib. MH ( [ path [, profile ] ] )

MH represents a collection of MH folders.

class mhlib. Folder ( mh, name )

The Folder class represents a single folder and its messages.

class mhlib. Message ( folder, number [, name ] )

Message objects represent individual messages in a folder. The Message class is derived from mimetools.Message.

18.5.1. MH Objects

MH instances have the following methods:

MH. error ( format [, ... ] )

Print an error message – can be overridden.

MH. getprofile ( key )

Return a profile entry (None if not set).

MH. getpath ( )

Return the mailbox pathname.

MH. getcontext ( )

Return the current folder name.

MH. setcontext ( name )

Set the current folder name.

MH. listfolders ( )

Return a list of top-level folders.

MH. listallfolders ( )

Return a list of all folders.

MH. listsubfolders ( name )

Return a list of direct subfolders of the given folder.

MH. listallsubfolders ( name )

Return a list of all subfolders of the given folder.

MH. makefolder ( name )

Create a new folder.

MH. deletefolder ( name )

Delete a folder – must have no subfolders.

MH. openfolder ( name )

Return a new open folder object.

18.5.2. Folder Objects

Folder instances represent open folders and have the following methods:

Folder. error ( format [, ... ] )

Print an error message – can be overridden.

Folder. getfullname ( )

Return the folder’s full pathname.

Folder. getsequencesfilename ( )

Return the full pathname of the folder’s sequences file.

Folder. getmessagefilename ( n )

Return the full pathname of message n of the folder.

Folder. listmessages ( )

Return a list of messages in the folder (as numbers).

Folder. getcurrent ( )

Return the current message number.

Folder. setcurrent ( n )

Set the current message number to n.

Folder. parsesequence ( seq )

Parse msgs syntax into list of messages.

Folder. getlast ( )

Get last message, or 0 if no messages are in the folder.

Folder. setlast ( n )

Set last message (internal use only).

Folder. getsequences ( )

Return dictionary of sequences in folder. The sequence names are used as keys, and the values are the lists of message numbers in the sequences.

Folder. putsequences ( dict )

Return dictionary of sequences in folder name: list.

Folder. removemessages ( list )

Remove messages in list from folder.

Folder. refilemessages ( list, tofolder )

Move messages in list to other folder.

Folder. movemessage ( n, tofolder, ton )

Move one message to a given destination in another folder.

Folder. copymessage ( n, tofolder, ton )

Copy one message to a given destination in another folder.

18.5.3. Message Objects

The Message class adds one method to those of mimetools.Message:

Message. openmessage ( n )

Return a new open message object (costs a file descriptor).