code: def get(self,
              url,
              params=None,
              cache_cb=None,
              **kwargs):
          
          if self.use_random_user_agent:
              headers = kwargs.get("headers", dict())
              headers.update({Headers.UserAgent.KEY: Headers.UserAgent.random()})
              kwargs["headers"] = headers
  
          url = add_params(url, params)
  
          cache_consumed, value = self.try_read_cache(url)
          if cache_consumed:
              response = requests.Response()
              response.url = url
              response._content = value
          else:
              response = self.ses.get(url, **kwargs)
  
          if self.should_we_update_cache(response, cache_cb, cache_consumed):
              self.cache.set(
                  url, response.content,
                  expire=kwargs.get("cache_expire", self.cache_expire),
              )
          return response
docs: Make http get request.
  
          :param url:
          :param params:
          :param cache_cb: (optional) a function that taking requests.Response
              as input, and returns a bool flag, indicate whether should update the cache.
          :param cache_expire: (optional).
          :param kwargs: optional arguments.