From 29861c1118c77546cd2b3878879f8fc1472462e6 Mon Sep 17 00:00:00 2001 From: Ben Kurtovic Date: Wed, 14 Feb 2018 22:59:01 -0500 Subject: [PATCH] Revert previous; literal_eval is necessary here. Add error handling. --- copyvios/turnitin.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/copyvios/turnitin.py b/copyvios/turnitin.py index 2260e45..2b436ad 100644 --- a/copyvios/turnitin.py +++ b/copyvios/turnitin.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -import json +from ast import literal_eval import re import requests @@ -31,9 +31,10 @@ def _make_api_request(page_title, lang): 'report': 1} result = requests.get(TURNITIN_API_ENDPOINT, params=api_parameters) + # use literal_eval to *safely* parse the resulting dict-containing string try: - parsed_api_result = json.loads(result.text) - except ValueError: + parsed_api_result = literal_eval(result.text) + except (SyntaxError, ValueError): parsed_api_result = [] return parsed_api_result