code: def fetch_normal(item, request):
      
      try:
          conn = urllib2.urlopen(request, timeout=item.timeout_seconds)
      except urllib2.HTTPError, e:
          conn = e
      except (urllib2.URLError, ssl.SSLError), e:
          # TODO: Make this status more clear
          item.status_code = 400
          return item
  
      try:
          item.status_code = conn.getcode()
          item.content_type = conn.info().gettype()
          if item.result_path:
              with open(item.result_path, 'wb') as result_file:
                  shutil.copyfileobj(conn, result_file)
          else:
              item.data = conn.read()
      except socket.timeout, e:
          # TODO: Make this status more clear
          item.status_code = 400
          return item
      finally:
          conn.close()
  
      return item
docs: Fetches the given request over HTTP.