grab.transport
¶
Module Contents¶
Classes¶
Grab network transport based on urllib3 library. |
Attributes¶
- class grab.transport.Urllib3Transport[source]¶
Bases:
grab.base.BaseTransport
[grab.request.HttpRequest
,grab.document.Document
]Grab network transport based on urllib3 library.
- select_pool_for_request(req: grab.request.HttpRequest) urllib3.PoolManager | urllib3.ProxyManager | urllib3.contrib.socks.SOCKSProxyManager [source]¶
- log_request(req: grab.request.HttpRequest) None [source]¶
Log request details via logging system.
- request(req: grab.request.HttpRequest) None [source]¶
- read_with_timeout(req: grab.request.HttpRequest) bytes [source]¶
- get_response_header_items() list[tuple[str, Any]] [source]¶
Return current response headers as items.
This funciton is required to isolated smalles part of untyped code and hide it from mypy
- prepare_response(req: grab.request.HttpRequest, *, document_class: type[grab.document.Document] = Document) grab.document.Document [source]¶
Prepare response, duh.
This methed is called after network request is completed hence the “self._request” is not None.
Good to know: on python3 urllib3 headers are converted to str type using latin encoding.