title: Python Requests - Exit cleaning from a iter_content
body: <p>I am using the Python Requests module to consume the Twitter streaming API, here is my code:</p>
  
  <pre><code>self.conn = self.session.post(url, data=self.parameters, headers=self.headers)
      print &gt;&gt; sys.stderr, 'Connected to Twitter Streaming API'
      try:
          for line in self.conn.iter_content(self.ITER_BYTES):
              self.status += line
              if line.endswith(self.DIVIDER) and self.status.strip():
                  self.handler.handle(self.status)
                  self.status = ""
      except Exception as e:
          pass
  </code></pre>
  
  <p>When I end this script with a KeyboardInterrupt or by passing it a termination signal, I am getting the following stack error:</p>
  
  <pre><code>^CTraceback (most recent call last):
    File "python-test.py", line 18, in &lt;module&gt;
      api.start()
    File "bin/polygraph/api/twitter/streaming.py", line 95, in start
      self.conn = self.session.post(url, data=self.parameters, headers=self.headers)
    File "venv/lib/python2.7/site-packages/requests/sessions.py", line 258, in post
      return self.request('post', url, data=data, **kwargs)
    File "venv/lib/python2.7/site-packages/requests/sessions.py", line 208, in request
      r.send(prefetch=prefetch)
    File "venv/lib/python2.7/site-packages/requests/models.py", line 575, in send
      timeout=self.timeout,
    File "venv/lib/python2.7/site-packages/requests/packages/urllib3/connectionpool.py", line 383, in urlopen
      body=body, headers=headers)
    File "venv/lib/python2.7/site-packages/requests/packages/urllib3/connectionpool.py", line 261, in _make_request
      httplib_response = conn.getresponse()
    File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/httplib.py", line 1013, in getresponse
      response.begin()
    File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/httplib.py", line 402, in begin
      version, status, reason = self._read_status()
    File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/httplib.py", line 360, in _read_status
      line = self.fp.readline()
    File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/socket.py", line 430, in readline
      data = recv(1)
    File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/ssl.py", line 219, in recv
      return self.read(buflen)
    File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/ssl.py", line 138, in read
      return self._sslobj.read(len)
  KeyboardInterrupt
  </code></pre>
  
  <p>Is there any way to avoid this or gracefully exit from the connection?</p>