Содержание страницы
13.4. netrc – обработка файлов netrc¶netrc – netrc file processing
Новое в версии 1.5.2.
Исходный код: Lib/netrc.py
Класс netrc анализирует и инкапсулирует формат файлов netrc, используемый
программой Unix ftp и другими FTP-клиентами.
-
class
netrc.netrc([file])¶ Экземпляр
netrcили экземпляр подкласса инкапсулирует данные из файла netrc файла. Аргумент инициализации, если указан, задаёт файл для разбора. Если аргумент не передан, считывается файл.netrcиз домашнего каталога пользователя будет прочитан. Ошибки разбора вызываютNetrcParseErrorс диагностической информацией, включающей имя файла, номер строки и завершающий токен. Если на POSIX-системе аргумент не указан, наличие паролей в файле.netrcвызоветNetrcParseError, если владелец или права доступа к файлу небезопасны (файл принадлежит не тому пользователю, который запустил процесс, или доступен для чтения или записи любому другому пользователю). Это реализует поведение безопасности, эквивалентное ftp и другим программам, использующим.netrc.Изменено в версии 2.7.6:Добавлена проверка прав доступа POSIX.
-
exception
netrc.NetrcParseError¶ Исключение, вызываемое классом
netrcпри обнаружении синтаксических ошибок в исходном тексте. Экземпляры этого исключения предоставляют три атрибута:msg– текстовое описание ошибки,filename– имя исходного файла, аlineno– номер строки, в которой обнаружена ошибка.
13.4.1. Объекты netrc¶netrc Objects
Экземпляр netrc имеет следующие методы:
-
netrc.authenticators(host)¶ Возвращает кортеж из трёх элементов
(login, account, password)аутентификаторов для хоста. Если файл netrc не содержит записи для указанного хоста, возвращает кортеж, связанный с записью 'default'. Если нет ни подходящего хоста, ни записи по умолчанию, возвращаетNone.
-
netrc.__repr__()¶ Выгружает данные класса в виде строки в формате файла netrc. (При этом отбрасываются комментарии и может измениться порядок записей.)
Экземпляры netrc имеют открытые переменные экземпляра:
-
netrc.hosts¶ Словарь, сопоставляющий имена хостов с кортежами
(login, account, password). Запись 'default', если присутствует, представлена как псевдохост с этим именем.
-
netrc.macros¶ Словарь, сопоставляющий имена макросов со списками строк.
Примечание
Пароли ограничены подмножеством набора символов ASCII. Версии этого модуля до 2.3 были крайне ограничены. Начиная с версии 2.3, все знаки пунктуации ASCII допускаются в паролях. Однако следует учитывать, что пробельные символы и непечатаемые символы в паролях не разрешены. Это ограничение способа разбора файла .netrc, которое может быть снято в будущем.