A general exception catcher logs the following exception:
Traceback (most recent call last):
File "4sq.py", line 37, in <module>
checkin = client.checkins()
File "/usr/local/lib/python2.7/dist-packages/foursquare-20120716-py2.7.egg/foursquare/__init__.py", line 416, in __call__
return self.GET('{CHECKIN_ID}'.format(CHECKIN_ID=CHECKIN_ID), params, multi=multi)
File "/usr/local/lib/python2.7/dist-packages/foursquare-20120716-py2.7.egg/foursquare/__init__.py", line 217, in GET
return self.requester.GET(self._expanded_path(path), *args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/foursquare-20120716-py2.7.egg/foursquare/__init__.py", line 163, in GET
return self._request(url)
File "/usr/local/lib/python2.7/dist-packages/foursquare-20120716-py2.7.egg/foursquare/__init__.py", line 200, in _request
return _request_with_retry(url, data)['response']
File "/usr/local/lib/python2.7/dist-packages/foursquare-20120716-py2.7.egg/foursquare/__init__.py", line 696, in _request_with_retry
return _process_request_with_httplib2(url, data)
File "/usr/local/lib/python2.7/dist-packages/foursquare-20120716-py2.7.egg/foursquare/__init__.py", line 719, in _process_request_with_httplib2
return _check_response(data)
File "/usr/local/lib/python2.7/dist-packages/foursquare-20120716-py2.7.egg/foursquare/__init__.py", line 742, in _check_response
raise exc(meta.get('errorDetail'))
RateLimitExceeded: Quota exceeded
I would like to know the specific exception name so I could add a dedicated catch to it. How can it be found?
Is there a 'type' function on the caught exception or should it be found in the throwing lib's source (available here)?
RateLimitExceededexception. Though, to be sure, I would wrap it in atry/except Exception as eand printe.__class__. That'll give you a definite answer