Содержание страницы
netrc – обработка файлов netrc¶netrc – netrc file processing
Исходный код: 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 не передан в качестве аргумента.
-
exception
netrc.NetrcParseError¶ Исключение, вызываемое классом
netrcпри обнаружении синтаксических ошибок в исходном тексте. Экземпляры этого исключения предоставляют три атрибута:msg– текстовое описание ошибки,filename– имя исходного файла, аlineno– номер строки, в которой обнаружена ошибка.
Объекты 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. Все знаки пунктуации ASCII разрешены в паролях, однако обратите внимание, что пробельные символы и непечатаемые символы в паролях не допускаются. Это ограничение способа разбора файла .netrc и может быть устранено в будущем.