diff --git a/requests/adapters.py b/requests/adapters.py index d4f5d5b4..c350ae44 100644 --- a/requests/adapters.py +++ b/requests/adapters.py @@ -9,7 +9,6 @@ and maintain connections. """ import socket -import datetime from .models import Response from .packages.urllib3.poolmanager import PoolManager, ProxyManager @@ -156,7 +155,6 @@ class HTTPAdapter(BaseAdapter): url = self.request_url(request, proxies) chunked = not (request.body is None or 'Content-Length' in request.headers) - start = datetime.datetime.utcnow() try: if not chunked: @@ -200,7 +198,6 @@ class HTTPAdapter(BaseAdapter): preload_content=False, decode_content=False ) - finish = datetime.datetime.utcnow() except socket.error as sockerr: raise ConnectionError(sockerr) @@ -217,7 +214,6 @@ class HTTPAdapter(BaseAdapter): raise Timeout('Request timed out.') r = self.build_response(request, resp) - r.elapsed = finish - start if not stream: r.content diff --git a/requests/sessions.py b/requests/sessions.py index e607adff..de3f5b75 100644 --- a/requests/sessions.py +++ b/requests/sessions.py @@ -9,6 +9,7 @@ requests (cookies, auth, proxies). """ import os +from datetime import datetime from .compat import cookielib from .cookies import cookiejar_from_dict @@ -368,7 +369,9 @@ class Session(SessionRedirectMixin): """Send a given PreparedRequest.""" hooks = request.hooks adapter = self.get_adapter(url=request.url) + start = datetime.utcnow() r = adapter.send(request, **kwargs) + r.elapsed = datetime.utcnow() - start # Response manipulation hooks r = dispatch_hook('response', hooks, r) return r