0
내가 파이썬은 트위터 스트리밍 API를 소비하는 모듈을 요청 사용하고 있습니다에서 청소 종료, 여기 내 코드입니다 : 나는 KeyboardInterrupt 또는 전달하여이 스크립트를 종료하면파이썬 요청하는 iter_content
self.conn = self.session.post(url, data=self.parameters, headers=self.headers)
print >> 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
그것 종료 신호가 발생했습니다. 다음과 같은 스택 오류가 발생합니다.
^CTraceback (most recent call last):
File "python-test.py", line 18, in <module>
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
연결을 피하거나 연결을 정상적으로 종료 할 수있는 방법이 있습니까?