Exemplo n.º 1
0
 def set_headers(self, headers):
     h = httputils.Headers()
     if isinstance(headers, list):
         h.extend(list(map(httputils.get_header, headers)))
     elif type(headers) is str:
         h.add_header(headers)
     self._headers = h
Exemplo n.º 2
0
 def reset(self, url, data=None, query=None, method="GET",
         encoding=DEFAULT_ENCODING, language=DEFAULT_LANGUAGE,
         useragent=DEFAULT_UA, accept=DEFAULT_ACCEPT,
         extraheaders=None, strict=True, proxy=None, cookiejar=None,
         accept_encoding=None):
     self.clear_state()
     self._url = urls.UniversalResourceLocator(url, strict)
     self._proxy = proxy
     if accept_encoding:
         assert accept_encoding in ("identity", "gzip", "deflate")
         self._accept_encoding = accept_encoding
     h = httputils.Headers()
     if cookiejar:
         c = cookiejar.get_cookie(self._url)
         if c:
             h.append(c)
     h.append(httputils.UserAgent(useragents.USER_AGENTS.get(useragent, useragent)))
     if accept:
         h.append(httputils.Accept(accept))
     h.append(httputils.AcceptLanguage(language))
     h.append(httputils.AcceptCharset("%s,*;q=0.7" % (encoding,)))
     self._encoding = encoding
     self._language = language
     self._query = query
     self._headers = h
     # add header objects, which could be a list, or inet.httplib.Headers.
     if extraheaders and isinstance(extraheaders, list):
         self._headers.extend(list(map(httputils.get_header, extraheaders)))
     if data:
         self._data = data
     else:
         self._data = {}
     self.set_method(method)
Exemplo n.º 3
0
 def clear_state(self):
     self._method = "GET"
     self._url = None
     self._headers = httputils.Headers()
     self._data = {}
     self._proxy = None
     self._encoding = DEFAULT_ENCODING
     self._language = DEFAULT_LANGUAGE
     self._accept_encoding = DEFAULT_ACCEPT_ENCODING
Exemplo n.º 4
0
 def _get_headers(self):
     try:
         return self._headers
     except AttributeError:
         self._headers = hdrs = httputils.Headers()
         for k, v in self.environ.iteritems():
             if k.startswith("HTTP"):
                 hdrs.append(
                     httputils.make_header(k[5:].replace("_", "-"), v))
         return self._headers
Exemplo n.º 5
0
 def _make_headers(self):
     if self._headersobjects:
         return self._headersobjects
     else:
         rv = httputils.Headers()
         for ht in self._headers:
             ht = ht.strip()
             if ht:
                 rv.append(httputils.get_header(ht))
         self._headersobjects = rv
         self._headers = []
         return rv
Exemplo n.º 6
0
 def __init__(self, content=b'', mimetype=None, charset=b"utf-8"):
     self.headers = httputils.Headers()
     self.cookies = httputils.CookieJar()
     self._charset = charset
     if mimetype:
         self.headers.add_header(
             httputils.ContentType(mimetype, charset=self._charset))
     if hasattr(content, '__iter__'):
         self._container = content
         self._is_string = False
     else:
         self._container = [content]
         self._is_string = True
Exemplo n.º 7
0
 def __init__(self, content='', mimetype=None):
     self.headers = httputils.Headers()
     self.cookies = httputils.CookieJar()
     self._charset = sys.getdefaultencoding()  # XXX
     if mimetype:
         self.headers.add_header(
             httputils.ContentType(mimetype, charset=self._charset))
     if hasattr(content, '__iter__'):
         self._container = content
         self._is_string = False
     else:
         self._container = [content]
         self._is_string = True