11.6.2 IMAP4 使用例

以下はメールボックスを開いてすべてのメールを読み出して表示する 最小限の例(エラーチェックなし)です:

import getpass, imaplib, string
M = imaplib.IMAP4()
M.LOGIN(getpass.getuser(), getpass.getpass())
M.SELECT()
typ, data = M.SEARCH(None, 'ALL')
for num in string.split(data[0]):
    typ, data - M.FETCH(num, '(RFC822)')
    print 'Message %s\n%s\n' % (num, data[0][1])
M.LOGOUT()

メールボックスが変更されると IMAP4メッセージ番号も変わるため、 代わりに UIDsと UIDコマンドを使用することが強く推奨されていることに注意。

モジュールの最後に、より大規模な使い方の例を含むテストセクションがあります。

See Also:

サーバ側で実装する場合のプロトコルとソース、 バイナリについて記述されているドキュメントはすべて、 ワシントン大学IMAP Information Center (http://www.cac.washington.edu/imap/) で見つけられるでしょう。


guido@python.org