def fetch_problems_by_category(): """Fetches problems from Codeforces API and perform category-wise count""" try: url = Urlbuilder(Codeforces.API_URL, PublicMethods.PROBLEM_SET) try: response = httprequest.send_get_request(url.get_url()) except RequestFailureException as ex: raise ex else: json = response.json() if 'status' in json: if json['status'] == 'OK': result = json['result'] problem_list = result['problems'] return problem_list else: raise RequestFailureException('Request Failed: ' + json['comment']) else: raise RequestFailureException( 'Request Failed: Invalid response') except RequestFailureException as ex: print ex.message sys.exit(1)
def import_submissions(self): """Sends request at Codeforces.API_URL/user.status to fetch submission list and returns the response json """ url = self.generate_url() try: response = httprequest.send_get_request(url); except RequestFailureException as ex: print ex.message sys.exit(1) else: if 'status' in response.json(): # status == OK, if request succeeds if response.json()['status'] == 'OK': print 'Connection Status: Successful' return response.json() else: if 'comment' in response.json(): # prints why request failed raise RequestFailureException(response.json()['comment']) else: raise RequestFailureException('Request Failed') else: raise RequestFailureException('Request Failed')
def fetch_problems_by_category(): """Fetches problems from Codeforces API and perform category-wise count""" try: url = Urlbuilder(Codeforces.API_URL, PublicMethods.PROBLEM_SET) try: response = httprequest.send_get_request(url.get_url()) except RequestFailureException as ex: raise ex else: json = response.json() if 'status' in json: if json['status'] == 'OK': result = json['result'] problem_list = result['problems'] return problem_list else: raise RequestFailureException('Request Failed: ' + json['comment']) else: raise RequestFailureException('Request Failed: Invalid response') except RequestFailureException as ex: print ex.message sys.exit(1)