adjusted the logic in the twitter response reader to better handle API errors.
this could likely be done a bit cleaner -- but this works.
This commit is contained in:
parent
e1c4035a63
commit
9d21865409
1 changed files with 13 additions and 1 deletions
|
|
@ -175,6 +175,9 @@ class Twython(object):
|
||||||
response = func(url, data=params, files=files)
|
response = func(url, data=params, files=files)
|
||||||
content = response.content.decode('utf-8')
|
content = response.content.decode('utf-8')
|
||||||
|
|
||||||
|
print response
|
||||||
|
print response.__dict__
|
||||||
|
|
||||||
# create stash for last function intel
|
# create stash for last function intel
|
||||||
self._last_call = {
|
self._last_call = {
|
||||||
'api_call': api_call,
|
'api_call': api_call,
|
||||||
|
|
@ -187,10 +190,15 @@ class Twython(object):
|
||||||
'content': content,
|
'content': content,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
# wrap the json loads in a try, and defer an error
|
||||||
|
# why? twitter will return invalid json with an error code in the headers
|
||||||
|
json_error = False
|
||||||
try:
|
try:
|
||||||
content = simplejson.loads(content)
|
content = simplejson.loads(content)
|
||||||
except ValueError:
|
except ValueError:
|
||||||
raise TwythonError('Response was not valid JSON, unable to decode.')
|
json_error= True
|
||||||
|
content= {}
|
||||||
|
|
||||||
if response.status_code > 304:
|
if response.status_code > 304:
|
||||||
# If there is no error message, use a default.
|
# If there is no error message, use a default.
|
||||||
|
|
@ -207,6 +215,10 @@ class Twython(object):
|
||||||
error_code=response.status_code,
|
error_code=response.status_code,
|
||||||
retry_after=response.headers.get('retry-after'))
|
retry_after=response.headers.get('retry-after'))
|
||||||
|
|
||||||
|
# if we have a json error here , then it's not an official TwitterAPI error
|
||||||
|
if json_error:
|
||||||
|
raise TwythonError('Response was not valid JSON, unable to decode.')
|
||||||
|
|
||||||
return content
|
return content
|
||||||
|
|
||||||
'''
|
'''
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue