code: def http_get(self, request_url):
          
          try:
              headers = {'Accept-Encoding': 'gzip, deflate'}
              response = requests.get(request_url, headers=headers)
          except requests.exceptions.Timeout as ext:
              log.error('Error: Timeout', ext)
          except requests.exceptions.TooManyRedirects as extmr:
              log.error('Error: TooManyRedirects', extmr)
          except requests.exceptions.RequestException as ex:
              log.error('Error: RequestException', ex)
              sys.exit(1)
  
          try:
              self.cache_control = response.headers['Cache-Control']
          except KeyError as kerr:
              log.warning('Warning: Could not get headers. %s' % kerr)
              self.cache_control = None
          try:
              self.expires = response.headers['Expires']
          except KeyError as kerr:
              log.warning('Warning: Could not get headers. %s' % kerr)
              self.extend_url = None
          try:
              self.x_forecast_api_calls = response.headers['X-Forecast-API-Calls']
          except KeyError as kerr:
              log.warning('Warning: Could not get headers. %s' % kerr)
              self.x_forecast_api_calls = None
          try:
              self.x_responde_time = response.headers['X-Response-Time']
          except KeyError as kerr:
              log.warning('Warning: Could not get headers. %s' % kerr)
              self.x_responde_time = None
  
          if response.status_code is not 200:
              raise requests.exceptions.HTTPError('Bad response, status code: %x' % (response.status_code))
  
          self.raw_response = response.text
          return self.raw_response
docs: This function recieves the request url and it is used internally to get
          the information via http.
          Returns the response content.
          Raises Timeout, TooManyRedirects, RequestException.
          Raises KeyError if headers are not present.
          Raises HTTPError if responde code is not 200.