netrc ---netrc文件处理

源代码: Lib/netrc.py


这个 netrc 类解析并封装Unix使用的netrc文件格式 ftp 程序和其他FTP客户端。

class netrc.netrc([file])

A netrc 实例或子类实例封装来自netrc文件的数据。初始化参数(如果存在)指定要分析的文件。如果没有给出参数,则文件 .netrc 在用户的主目录中--由 os.path.expanduser() --将被读取。否则,a FileNotFoundError 将引发异常。分析错误将引发 NetrcParseError 带有诊断信息,包括文件名、行号和终止令牌。如果在POSIX系统上未指定任何参数,则在 .netrc 文件将引发 NetrcParseError 如果文件所有权或权限不安全(由运行进程的用户以外的用户拥有,或可供任何其他用户读取或写入)。这实现了与ftp和其他使用 .netrc .

在 3.4 版更改: 添加了POSIX权限检查。

在 3.7 版更改: os.path.expanduser() 用于查找 .netrc 当文件 file 不是作为参数传递的。

exception netrc.NetrcParseError

由引发的异常 netrc 当源文本中遇到语法错误时初始化。此异常的实例提供三个有趣的属性: msg 是对错误的文本解释, filename 是源文件的名称,并且 lineno 给出错误所在的行号。

NETRC对象

A netrc 实例具有以下方法:

netrc.authenticators(host)

返回3元组 (login, account, password) 的身份验证程序 host . 如果netrc文件不包含给定主机的条目,则返回与“default”条目关联的元组。如果匹配的主机和默认条目都不可用,则返回 None .

netrc.__repr__()

以netrc文件的格式将类数据作为字符串转储。(这将丢弃注释,并可能重新排序条目。)

实例 netrc 具有公共实例变量:

netrc.hosts

将主机名映射到的字典 (login, account, password) 元组。“默认”条目(如果有)用该名称表示为伪主机。

netrc.macros

将宏名称映射到字符串列表的字典。

注解

密码仅限于ASCII字符集的一个子集。密码中允许使用所有ASCII标点符号,但是请注意,密码中不允许使用空格和不可打印的字符。这是对.netrc文件解析方式的限制,将来可能会删除该文件。