def get_timetable(email, start, end): logger.info("Getting timetable for " + email) try: response = requests.get(__base_URL.format(start.strftime(__date_format), end.strftime(__date_format), email), timeout=3) except requests.exceptions.Timeout: return None if response is None or response.status_code != 200: logger.error("RUZ Server doesn't response correctly") return None logger.info("Got timetable " + email) json = response.json() try: return Lesson.split_days(Lesson(lesson) for lesson in json) except: log = dumps(json, indent=' '*4, sort_keys=True, ensure_ascii=False) logger.error("Got none from RUZ. Got: "+log) BotLogic.send_admin_alert(got_wrong_from_ruz+log) return None