code: def urlopen(self, method, url, redirect=True, **kw):
          "Same as HTTP(S)ConnectionPool.urlopen, ``url`` must be absolute."
          u = parse_url(url)
  
          if u.scheme == "http":
              # For proxied HTTPS requests, httplib sets the necessary headers
              # on the CONNECT to the proxy. For HTTP, we'll definitely
              # need to set 'Host' at the very least.
              headers = kw.get('headers', self.headers)
              kw['headers'] = self._set_proxy_headers(url, headers)
  
          return super(ProxyManager, self).urlopen(method, url, redirect=redirect, **kwf urlopen(self, method, url, redirect=True, **kw):
          "Same as HTTP(S)ConnectionPool.urlopen, ``url`` must be absolute."
          u = parse_url(url)
  
          if u.scheme == "http":
              # For proxied HTTPS requests, httplib sets the necessary headers
              # on the CONNECT to the proxy. For HTTP, we'll definitely
              # need to set 'Host' at the very least.
              headers = kw.get('headers', self.headers)
              kw['headers'] = self._set_proxy_headers(url, headers)
  
          return super(ProxyManager, self).urlopen(method, url, redirect=redirect, **kw)
docs: Same as HTTP(S)ConnectionPool.urlopen, ``url`` must be absolute.