def nextGame(uk, us): for r in ("uk", "us"): if r == "us": BEARER_TOKEN = us[0] else: BEARER_TOKEN = uk[0] main_url = "https://api-quiz.hype.space/shows/now?type=" headers = { "Authorization": "Bearer %s" % BEARER_TOKEN, "x-hq-client": "Android/1.3.0" } done = False loops = 0 while done == False: loops += 1 if loops > 2: return (None, None) try: response_data = asyncio.get_event_loop().run_until_complete( networking.get_json_response(main_url, timeout=1.5, headers=headers)) except: print("Server response not JSON, retrying...") time.sleep(1) continue if "broadcast" not in response_data or response_data[ "broadcast"] is None: if "error" in response_data and response_data[ "error"] == "Auth not valid": raise RuntimeError("Connection settings invalid") else: try: next_time = datetime.strptime( response_data["nextShowTime"], "%Y-%m-%dT%H:%M:%S.000Z") now = time.time() offset = datetime.fromtimestamp( now) - datetime.utcfromtimestamp(now) if r == "uk": timetouk = next_time - datetime.strptime( datetime.now().strftime( "%Y-%m-%dT%H:%M:%S.000Z"), "%Y-%m-%dT%H:%M:%S.000Z") elif r == "us": timetous = next_time - datetime.strptime( datetime.now().strftime( "%Y-%m-%dT%H:%M:%S.000Z"), "%Y-%m-%dT%H:%M:%S.000Z") done = True except Exception as e: print(e) tTo = "Time to next UK game: %s\nTime to next US game: %s" % (timetouk, timetouk) if timetouk < timetous: return ("uk", tTo) else: return ("us", tTo)
if test: # q = input("enter question: ") input("done. press enter to restart lol") q = "Which of these physics terms gets its name from an Indian scientist?" print(q) answers = ["Boson", "Ferrimagnetism", "Lepton"] # for x in range(3): # answers.append(input(f"enter answer {x}: ")) asyncio.get_event_loop().run_until_complete( testing.test_question(q, answers)) else: print() try: response_data = asyncio.get_event_loop().run_until_complete( networking.get_json_response(main_url, timeout=1.5, headers=headers)) except: print("Server response not JSON, retrying...") time.sleep(1) continue logging.info(response_data) if "broadcast" not in response_data or response_data[ "broadcast"] is None: if "error" in response_data and response_data[ "error"] == "Auth not valid": raise RuntimeError("Connection settings invalid") else: print("Show not on.")
BEARER_TOKEN_US = settings[0].split("=")[1] except IndexError as e: raise e print("Getting...") main_url = f"https://api-quiz.hype.space/shows/now?type=" headers = {"Authorization": f"Bearer {BEARER_TOKEN_US}", "x-hq-client": "Android/1.3.0"} # "x-hq-stk": "MQ==", # "Connection": "Keep-Alive", # "User-Agent": "okhttp/3.8.0"} while True: print() try: response_data = asyncio.get_event_loop().run_until_complete(networking.get_json_response(main_url, timeout=1.5, headers=headers)) except: print("Server response not JSON, retrying...") time.sleep(1) continue if "broadcast" not in response_data or response_data["broadcast"] is None: if "error" in response_data and response_data["error"] == "Auth not valid": raise RuntimeError("Connection settings invalid") else: print("Show not on.") next_time = datetime.strptime(response_data["nextShowTime"], "%Y-%m-%dT%H:%M:%S.000Z") now = time.time() offset = datetime.fromtimestamp(now) - datetime.utcfromtimestamp(now) print(f"Next show time: {(next_time + offset).strftime('%Y-%m-%d %I:%M %p')}") print("Prize: " + response_data["nextShowPrize"])