netrc

1.5.2版本的新功能。

源代码: Lib / netrc.py

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

class netrc.netrc([file])

一个netrc实例或子类实例封装来自netrc文件的数据。初始化参数(如果存在)指定要解析的文件。如果未提供参数,.netrc则会读取用户主目录中的文件。NetrcParseError诊断信息(包括文件名,行号和终止令牌)会引发解析错误。如果POSIX系统上没有指定参数,密码中存在.netrc文件将提出一个NetrcParseError,如果该文件的所有权或权限是不安全的(由除用户以外的其他用户身份运行进程所拥有的,或访问读或通过任何其他写用户)。这实现了与ftp和其他使用的程序相同的安全行为.netrc

在版本2.7.6中更改:添加了POSIX权限检查。

exception netrc.NetrcParseError

netrc在源文本中遇到语法错误时由类引发的异常。此例外的实例提供了三个有趣的属性:msg错误的文本解释,filename源文件的名称,并lineno给出发现错误的行号。

1. netrc对象

一个netrc实例有以下方法:

netrc.authenticators(host)

(login, account, password)主机返回一个三元组验证器。如果netrc文件不包含给定主机的条目,则返回与“默认”条目关联的元组。如果没有匹配的主机和默认条目可用,则返回None

netrc.__repr__()

将类数据以netrc文件的格式转储为字符串。(这会丢弃评论并可能重新排列条目。)

netrc的实例有公开的实例变量:

netrc.hosts

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

netrc.macros

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

注意

密码仅限于ASCII字符集的一个子集。2.3之前的这个模块的版本非常有限。从2.3开始,密码中允许使用所有ASCII标点符号。但是,请注意密码中不允许使用空格和不可打印的字符。这是.netrc文件解析的方式的一个限制,将来可能会被删除。

扫码关注云+社区

领取腾讯云代金券