18.5. mhlib — Access to MH mailboxes — Python v2.6.9 documentation

### Navigation

- index
- modules |
- next |
- previous |
- Python »
- Python v2.6.9 documentation »
- The Python Standard Library »
- 18. Internet Data Handling »

# 18.5. `mhlib` — Access to MH mailboxes

Deprecated since version 2.6: The `mhlib` module has been removed in Python 3.0. 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).

### Navigation

- index
- modules |
- next |
- previous |
- Python »
- Python v2.6.9 documentation »
- The Python Standard Library »
- 18. Internet Data Handling »