ArchiveTeam / seesaw-kit

Making a reusable toolkit for writing seesaw scripts
Other
69 stars 30 forks source link

tracker.py: Decode response body when applicable #91

Closed tobbez closed 8 years ago

tobbez commented 8 years ago

When running under Python 3, response.body is a bytes object, but process_body assumes it is passed a string.

This commit addresses that, fixing the following error:

Starting GetItemFromTracker for Item Failed GetItemFromTracker for Item Traceback (most recent call last): File "[...]/lib/python3.4/site-packages/tornado/stack_context.py", line 314, in wrapped ret = fn(_args, *_kwargs) File "[...]/lib/python3.4/site-packages/seesaw/tracker.py", line 64, in handle_response self.process_body(response.body, item) File "[...]/lib/python3.4/site-packages/seesaw/tracker.py", line 125, in process_body data = json.loads(body) File "/usr/lib64/python3.4/json/init.py", line 312, in loads s.class.name)) TypeError: the JSON object must be str, not 'bytes'