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 generate_url(self): """Generates url Codeforces.API_URL/user.status with appropriate args and returns the url""" url = Urlbuilder(Codeforces.API_URL, UserRequestMethod.SUBMISSION_METHOD); url.add_param('handle', self.handle) url.add_param('from', '1') url.add_param('count', str(self.max_sub_lim)) return url.get_url()
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)