netrc —netrcファイルの処理
ソースコード: :source: `Lib / netrc.py`
netrc クラスは、Unix ftp プログラムおよびその他のFTPクライアントで使用されるnetrcファイル形式を解析してカプセル化します。
- class netrc.netrc([file])
netrc インスタンスまたはサブクラスインスタンスは、netrcファイルからのデータをカプセル化します。 初期化引数が存在する場合は、解析するファイルを指定します。 引数が指定されていない場合、 os.path.expanduser()によって決定されるユーザーのホームディレクトリ内のファイル
.netrc
が読み取られます。 そうしないと、 FileNotFoundError 例外が発生します。 解析エラーは、ファイル名、行番号、終了トークンなどの診断情報を含む NetrcParseError を発生させます。 POSIXシステムで引数が指定されていない場合、ファイルの所有権またはアクセス許可が安全でない(ユーザー以外のユーザーが所有している)場合、.netrc
ファイルにパスワードが存在すると NetrcParseError が発生します。プロセスを実行するか、他のユーザーが読み取りまたは書き込みを行うためにアクセスできます)。 これにより、ftpや.netrc
を使用する他のプログラムと同等のセキュリティ動作が実装されます。バージョン3.4で変更: POSIX権限チェックが追加されました。
バージョン3.7で変更:ファイルが渡されない場合、 os.path.expanduser()を使用して
.netrc
ファイルの場所を検索します引数として。
- exception netrc.NetrcParseError
- ソーステキストで構文エラーが発生した場合に netrc クラスによって発生する例外。 この例外のインスタンスは、3つの興味深い属性を提供します。
msg
はエラーのテキストによる説明、filename
はソースファイルの名前、lineno
は行番号を示します。エラーが見つかりました。
netrcオブジェクト
netrc インスタンスには次のメソッドがあります。
- netrc.authenticators(host)
- ホストのオーセンティケーターの3タプル
(login, account, password)
を返します。 netrcファイルに特定のホストのエントリが含まれていなかった場合は、「default」エントリに関連付けられたタプルを返します。 一致するホストもデフォルトのエントリも使用できない場合は、None
を返します。
- netrc.__repr__()
- クラスデータをnetrcファイルの形式の文字列としてダンプします。 (これによりコメントが破棄され、エントリが並べ替えられる場合があります。)
netrc のインスタンスには、パブリックインスタンス変数があります。
- netrc.hosts
- ホスト名を
(login, account, password)
タプルにマッピングする辞書。 'default'エントリは、存在する場合、その名前で疑似ホストとして表されます。
- netrc.macros
- マクロ名を文字列リストにマッピングする辞書。
ノート
パスワードは、ASCII文字セットのサブセットに制限されています。 パスワードではすべてのASCII句読点を使用できますが、パスワードでは空白や印刷できない文字を使用できないことに注意してください。 これは、.netrcファイルの解析方法の制限であり、将来削除される可能性があります。