from . import utils
-from .models import HTTPError, Request, Response
+from .models import Request, Response
from .api import request, get, head, post, patch, put, delete
from .sessions import session
from .status_codes import codes
import socket
import zlib
-from urllib2 import HTTPError
from urlparse import urlparse, urlunparse, urljoin
from datetime import datetime
+from .auth import dispatch as auth_dispatch
from .hooks import dispatch_hook
from .structures import CaseInsensitiveDict
from .packages.poster.encode import multipart_encode
from .packages.poster.streaminghttp import register_openers, get_handlers
-from .utils import (dict_from_cookiejar, get_unicode_from_response, stream_decode_response_unicode, decode_gzip, stream_decode_gzip)
from .status_codes import codes
from .exceptions import Timeout, URLRequired, TooManyRedirects
from .monkeys import Request as _Request
from .monkeys import HTTPRedirectHandler
+from .utils import (
+ dict_from_cookiejar, get_unicode_from_response,
+ stream_decode_response_unicode, decode_gzip, stream_decode_gzip)
-from .auth import dispatch as auth_dispatch
REDIRECT_STATI = (codes.moved, codes.found, codes.other, codes.temporary_moved)
class Session(object):
"""A Requests session."""
- __attrs__ = ['headers', 'cookies', 'auth', 'timeout', 'proxies', 'hooks', 'params', 'config']
+ __attrs__ = [
+ 'headers', 'cookies', 'auth', 'timeout', 'proxies', 'hooks',
+ 'params', 'config']
def __init__(self,
proxies=None,
hooks=None,
params=None,
- config=None):
+ config=None,
+ keep_alive=True):
self.headers = headers or {}
self.cookies = cookies or {}
self.hooks = hooks or {}
self.params = params or {}
self.config = config or {}
+ self.keep_alive = keep_alive
for (k, v) in defaults.items():
self.config.setdefault(k, v)
# Send the HTTP Request.
r.send()
-
return r.response