11.7 ftplib -- FTPプロトコルクライアント

このモジュールではFTPクラスと、それに関連するいくつかの項目を定 義しています。 FTPクラスは、FTPプロトコルのクライアント側の機能を備えています。 このクラスを使うとFTPのいろいろな機能の自動化、例えば他のFTPサーバのミ ラーリングといったことを実行するPythonプログラムを書くことができます。 また、urllibモジュールもFTPを使うURLを操作するのにこのクラス を使っています。 FTP (File Transfer Protocol)についての詳しい情報はInternet RFC 959を参 照して下さい。

ftplibモジュールを使ったサンプルを以下に示します:

>>> from ftplib import FTP
>>> ftp = FTP('ftp.cwi.nl')   # ホストのデフォルトポートへ接続
>>> ftp.login()               # ユーザ名 anonymous、パスワード anonyumou
s@
>>> ftp.retrlines('LIST')     # ディレクトリの内容をリストアップ
total 24418
drwxrwsr-x   5 ftp-usr  pdmaint     1536 Mar 20 09:48 .
dr-xr-srwt 105 ftp-usr  pdmaint     1536 Mar 21 14:32 ..
-rw-r--r--   1 ftp-usr  pdmaint     5305 Mar 20 09:48 INDEX
 .
 .
 .
>>> ftp.retrbinary('RETR README', open('README', 'wb').write)
'226 Transfer complete.'
>>> ftp.quit()

このモジュールは以下の項目を定義しています:

クラス FTP( [host[, user[, passwd[, acct]]]])
FTPクラスの新しいインスタンスを返します。 hostが与えられると、connect(host)メソッドが実行されま す。 userが与えられると、さらにlogin(user, passwd, aracct)メソッドが実行されます(このpasswdacctは指定され なければデフォルトでは空文字列です)。

all_errors
FTPインスタンスのメソッドの結果、FTP接続で(プログラミングのエ ラーと考えられるメソッドの実行によって)発生する全ての例外(タプル形 式)。 この例外には以下の4つのエラーはもちろん、socket.errorIOErrorも含まれます。

exception error_reply
サーバから想定外の応答があった時に発生する例外。

exception error_temp
400-499の範囲のエラー応答コードを受け取った時に発生する例外。

exception error_perm
500-599の範囲のエラー応答コードを受け取った時に発生する例外。

exception error_proto
1-5の数字で始まらない応答コードをサーバから受け取った時に発生する例外。

参考:

netrc:モジュール
.netrcファイルフォーマットのパーザ。 .netrcファイルは、FTPクライアントがユーザにプロンプトを出す前に、 ユーザ認証情報をロードするのによく使われます。.

PythonのソースディストリビューションのTools/scripts/ftpmi rror.pyファイルは、FTPサイトあるいはその一部をミ ラーリングするスクリプトで、ftplibモジュールを使っています。こ のモジュールを適用した応用例として使うことができます。



ご意見やご指摘をお寄せになりたい方は、 このドキュメントについて... をご覧ください。