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: Используется
os.path.expanduser()для поиска расположения файла.netrcкогда file не передаётся в качестве аргумента.Изменено в версии 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’. Если не найдено ни соответствующего хоста, ни записи 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