все 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Сообщить о неточности