netrc
— обработка файла netrc¶
Источник: Lib/netrc.py
Класс netrc
анализирует и инкапсулирует формат файла netrc, используемый программой ftp Unix и другими FTP-клиентами.
- class netrc.netrc([file])¶
Экземпляр
netrc
или экземпляр подкласса содержит данные из файла netrc. Аргумент инициализации, если он присутствует, указывает файл для разбора. Если аргумент не указан, то будет прочитан файл.netrc
в домашней директории пользователя - как определено вos.path.expanduser()
. – будет прочитан. В противном случае будет вызвано исключениеFileNotFoundError
. При ошибках разбора будет выдано сообщениеNetrcParseError
с диагностической информацией, включающей имя файла, номер строки и завершающий токен. Если в системе POSIX аргумент не указан, наличие паролей в файле.netrc
вызовет исключениеNetrcParseError
, если права владения или разрешения файла небезопасны (принадлежат пользователю, не являющемуся пользователем, выполняющим процесс, или доступны для чтения или записи любому другому пользователю). Это реализует поведение безопасности, эквивалентное поведению ftp и других программ, использующих.netrc
.Изменено в версии 3.4: Добавлена проверка разрешения POSIX.
Изменено в версии 3.7:
os.path.expanduser()
используется для поиска местоположения.netrc
файла, если file не передан в качестве аргумента.Изменено в версии 3.10:
netrc
попробуйте использовать кодировку UTF-8, прежде чем использовать кодировку, специфичную для локали. Запись в файле netrc больше не обязана содержать все токены. Значение отсутствующих токенов по умолчанию равно пустой строке. Все токены и их значения теперь могут содержать произвольные символы, например пробельные символы и символы, не являющиеся символами ASCII. Если имя пользователя является анонимным, оно не будет вызывать проверку безопасности.
- exception netrc.NetrcParseError¶
Исключение, вызываемое классом
netrc
при обнаружении синтаксических ошибок в исходном тексте. Экземпляры этого исключения обладают тремя интересными атрибутами:- msg¶
Текстовое объяснение ошибки.
- filename¶
Имя исходного файла.
- lineno¶
Номер строки, на которой была обнаружена ошибка.
netrc Объекты¶
У экземпляра netrc
есть следующие методы:
- netrc.authenticators(host)¶
Возвращает 3-кортеж
(login, account, password)
аутентификаторов для хоста. Если файл netrc не содержит записи для данного хоста, возвращается кортеж, связанный с записью „по умолчанию“. Если нет ни подходящего хоста, ни записи по умолчанию, возвращаетсяNone
.
- netrc.__repr__()¶
Выгрузить данные класса в виде строки в формате файла netrc. (При этом удаляются комментарии и может быть изменен порядок записей).
Экземпляры netrc
имеют публичные переменные экземпляра:
- netrc.hosts¶
Словарь, отображающий имена хостов на кортежи
(login, account, password)
. Запись «по умолчанию», если таковая имеется, представляется в виде псевдохоста с таким именем.
- netrc.macros¶
Словарь, отображающий имена макросов на списки строк.