netrc
— Обработка netrc файла
Класс 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 не передаётся в качестве аргумента.
-
exception
netrc.
NetrcParseError
Исключение, создаваемое классом
netrc
при обнаружении синтаксических ошибок в исходном тексте. Экземпляры данного исключения предоставляют три интересных атрибута:msg
— текстовое объяснение ошибки,filename
— имя исходного файла, аlineno
— номер строки, в которой была обнаружена ошибка.
Объекты netrc
У экземпляра netrc
есть следующие методы:
-
netrc.
authenticators
(host) Возвращает 3 кортежа
(login, account, password)
аутентификаторов для host. Если файл netrc не содержит записи для данного хоста, возвращает кортеж, связанный с записью «по умолчанию». Если нет ни подходящего хоста, ни записи по умолчанию, возвращаетNone
.
-
netrc.
__repr__
() Дамп данных класса в виде строки в формате netrc файла. (Это отбрасывает комментарии и может изменить порядок записей.)
Экземпляры netrc
имеют общедоступные переменные экземпляра:
-
netrc.
hosts
Словарь, отображающий имена хостов в кортежи
(login, account, password)
. Запись «по умолчанию», если таковая имеется, представляется как псевдо-хост с этим именем.
-
netrc.
macros
Словарь, отображающий имена макросов в списки строк.
Примечание
Пароли ограничены подмножеством набора символов ASCII. В паролях разрешены все знаки пунктуации ASCII, однако обратите внимание, что пробелы и непечатаемые символы в паролях запрещены. Это ограничение способа анализа файла .netrc, которое может быть удалено в будущем.