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–2023 Python Software Foundation
Licensed under the PSF License.
https://docs.python.org/3.11/library/netrc.html