14.3. netrc
— netrc文件处理¶
源代码: Lib/netrc.py
netrc
类解析和封装了Unix ftp 程序和其他FTP客户端使用的netrc文件格式。
-
class
netrc.
netrc
([file])¶ netrc
实例或子类实例封装来自netrc文件的数据。初始化参数(如果存在)指定要解析的文件。如果没有给出参数,将读取用户主目录中的文件.netrc
。解析错误将引发NetrcParseError
和诊断信息,包括文件名,行号和终止令牌。如果在POSIX系统上没有指定参数,则.netrc
文件中存在密码将产生NetrcParseError
,如果文件所有权或权限不安全(由运行该进程的用户以外的用户拥有,或者由读取或写入任何其他用户)。这实现了等同于ftp和其他使用.netrc
的程序的安全行为。在 3.4 版更改: 添加了POSIX权限检查。
-
exception
netrc.
NetrcParseError
¶ 当源文本中遇到语法错误时,
netrc
类引发的异常。此异常的实例提供了三个有趣的属性:msg
是错误的文本解释,filename
是源文件的名称,lineno
给出找到错误的行号。
14.3.1. netrc对象¶
netrc
实例具有以下方法:
-
netrc.
authenticators
(host)¶ 返回 host 的认证器的3元组
(login, account, password)
。如果netrc文件不包含给定主机的条目,则返回与“default”条目关联的元组。如果匹配主机或缺省条目都不可用,请返回None
。
-
netrc.
__repr__
()¶ 将类数据转储为netrc文件格式的字符串。 (这会丢弃注释,并可能重新排序条目。)
netrc
的实例具有公共实例变量:
-
netrc.
hosts
¶ 将主机名映射到
(login, account, password)
元组的字典。 “默认”条目(如果有)通过该名称表示为伪主机。
-
netrc.
macros
¶ 将宏名称映射到字符串列表的字典。
注解
密码限于ASCII字符集的一个子集。在密码中允许使用所有ASCII标点符号,但请注意,密码中不允许使用空格和不可打印的字符。这是对.netrc文件进行解析的方式的限制,并且可能会在将来删除。