Python Glossary English

все Python 3urllib.requestпонятие

urllib.request.HTTPPasswordMgr

аутентификация

Хранилище паролей для обработчиков авторизации: запись add_password(realm, uri, user, passwd) и поиск по realm и адресу.

Синтаксис

mgr = urllib.request.HTTPPasswordMgr(); mgr.add_password(realm, uri, user, passwd)

Ловушка — realm: он должен совпасть с тем, что сервер прислал в WWW-Authenticate, иначе пароль не найдётся и придёт HTTPError 401. Если realm заранее неизвестен, берите HTTPPasswordMgrWithDefaultRealm и realm=None. Адрес сравнивается по префиксу: пароль для http://site/ подходит и для http://site/api, но не для другого хоста.

Примеры

import urllib.request
mgr = urllib.request.HTTPPasswordMgr()
mgr.add_password('api', 'http://example.com/', 'user', 'secret')
print(mgr.find_user_password('api', 'http://example.com/data'))  # → ('user', 'secret')
print(mgr.find_user_password(None, 'http://example.com/data'))  # → (None, None)

См. также

Открыть в полном глоссарииdocs.python.orgСообщить о неточности