# 9 `poplib` -- POP3 プロトコルクライアント

このモジュールは、 `POP3` クラスを定義します。これはPOP3サーバへの 接続と、 RFC 1725 に定められたプロトコルを実装します。 `POP3` クラスは minimalとoptinalという2つのコマンドセットをサポートします。 モジュールは`POP3_SSL`クラスも提供します。このクラスは下位の プロトコルレイヤーにSSLを使ったPOP3サーバへの接続を提供します。

POP3についての注意事項は、それが広くサポートされているにもかかわらず、 既に時代遅れだということです。幾つも実装されているPOP3サーバーの品質は、 貧弱なものが多数を占めています。もし、お使いのメールサーバーがIMAPを サポートしているなら、 ``imaplib` や `IMAP4`` が 使えます。 IMAPサーバーは、より良く実装されている傾向があります。

`poplib` モジュールでは、ひとつのクラスが提供されています。

クラス `POP3`( | host[, port])

  このクラスが、実際にPOP3プロトコルを実装します。インスタンスが初期化 されるときに、コネクションが作成されます。 port が省略されると、POP3標準のポート(110)が使われます。

クラス `POP3_SSL`( | host[, port[, keyfile[, certfile]]])

  `POP3` クラスのサブクラスで、SSLでカプセル化されたソケットによる POPサーバへの接続を提供します。 port が指定されていない場合、 POP3-over-SSL標準の995番ポートが使われます。 keyfile と certfile もオプションで - SSL接続に使われる PEMフォーマットの秘密鍵と信頼された＃＃を含みます。

  バージョン 2.4 で 新たに追加 された仕様です。

1つの例外が、 `poplib` モジュールのアトリビュートとして定義されています。

exception `error_proto`
  例外は、すべてのエラーで発生します。例外の理由は文字列としてコンストラクタに 渡されます。

参考:

`imaplib`:モジュール
  The standard Python IMAP module.

Frequently Asked Questions About Fetchmail
  POP/IMAPクライアント fetchmail のFAQ。POPプロトコルを ベースにしたアプリケーションを書くときに有用な、POP3サーバの種類や RFCへの適合度といった情報を収集しています。