Python Glossary English

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

urllib.request.OpenerDirector

сборщик обработчиков

Диспетчер, который стоит за urlopen(): хранит цепочку обработчиков и по схеме URL решает, кто откроет запрос.

Синтаксис

opener = urllib.request.OpenerDirector(); opener.add_handler(handler)

Для каждого запроса он вызывает методы обработчиков <схема>_request, <схема>_open и <схема>_response. Создавать его напрямую почти никогда не нужно: пустой OpenerDirector() не знает ни одной схемы и на необработанный URL молча возвращает None вместо ошибки. build_opener() добавляет UnknownHandler и стандартные обработчики — берите его.

Примеры

import urllib.request
bare = urllib.request.OpenerDirector()
bare.add_handler(urllib.request.DataHandler())
print(bare.open('data:,hi').read())  # → b'hi'
print(bare.open('file:///nonexistent'))  # → None

См. также

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