netrc — обработка файлов netrc
Исходный код: Lib/netrc.py
Класс netrc анализирует и инкапсулирует формат файлов netrc, используемый программой Unix ftp и другими FTP-клиентами.
-
class netrc.netrc([file]) -
Экземпляр
netrcили экземпляр подкласса инкапсулирует данные из файла netrc. Аргумент инициализации, если он указан, задаёт файл для анализа. Если аргумент не указан, будет прочитан файл.netrcв домашнем каталоге пользователя — определяемом с помощьюos.path.expanduser(). В противном случае будет вызвано исключениеFileNotFoundError. При ошибках анализа будет вызвано исключениеNetrcParseErrorс диагностической информацией, включая имя файла, номер строки и завершающий токен. Если в системе POSIX аргумент не указан, наличие паролей в файле.netrcвызовет исключениеNetrcParseError, если файл имеет небезопасного владельца или права доступа (принадлежит не пользователю, запустившему процесс, либо доступен для чтения или записи другим пользователям). Это обеспечивает такое же поведение безопасности, как у ftp и других программ, использующих.netrc.Изменено в версии 3.4: Добавлена проверка прав доступа POSIX.
Изменено в версии 3.7: Для определения расположения файла
.netrc, если аргумент file не передан, используетсяos.path.expanduser().Изменено в версии 3.10:
netrcсначала пробует кодировку UTF-8, а затем кодировку, специфичную для локали. Запись в файле netrc больше не обязана содержать все токены. Значения отсутствующих токенов по умолчанию становятся пустыми строками. Все токены и их значения теперь могут содержать произвольные символы, например пробельные и не относящиеся к ASCII. Если имя пользователя — anonymous, проверка безопасности не выполняется.
-
exception netrc.NetrcParseError -
Исключение, вызываемое классом
netrcпри обнаружении синтаксических ошибок в исходном тексте. Экземпляры этого исключения предоставляют три полезных атрибута:-
msg -
Текстовое описание ошибки.
-
filename -
Имя исходного файла.
-
lineno -
Номер строки, в которой обнаружена ошибка.
-
Объекты netrc
Экземпляр netrc имеет следующие методы:
-
netrc.authenticators(host) -
Возвращает 3-элементный кортеж
(login, account, password)средств аутентификации для host. Если в файле netrc нет записи для указанного узла, возвращает кортеж, связанный с записью «default». Если нет ни записи для указанного узла, ни записи по умолчанию, возвращаетNone.
-
netrc.__repr__() -
Выводит данные класса в виде строки в формате файла netrc. (При этом комментарии отбрасываются, а порядок записей может измениться.)
Экземпляры netrc имеют общедоступные переменные экземпляра:
-
netrc.hosts -
Словарь, сопоставляющий имена узлов с кортежами
(login, account, password). Запись «default», если она есть, представлена как псевдоузел с таким именем.
-
netrc.macros -
Словарь, сопоставляющий имена макросов со списками строк.
© 2001–2024 Python Software Foundation
Licensed under the PSF License.
https://docs.python.org/3.12/library/netrc.html