Spec-Zone.ru › Python 3.11

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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API