import requests import time from typing import Dict, Any import hashlib import json def dict_hash(dictionary: Dict[str, Any]) -> str: """MD5 hash of a dictionary.""" dhash = hashlib.md5() encoded = json.dumps(dictionary, sort_keys=True).encode() dhash.update(encoded) return dhash.hexdigest() # data = requests.get(f'https://opentdb.com/api.php?amount=2&type=multiple&token={token}') unique = [] thousand_q = [] while len(thousand_q) < 1000: data = requests.get(f'https://opentdb.com/api.php?amount=50&type=multiple') data = data.json() for i in data['results']: q_hash = dict_hash(i) if q_hash in unique: print("Already have this question...") continue unique.append(q_hash) thousand_q.append(i) print(len(thousand_q)) print('Waiting for api throttle to expire...') time.sleep(5) print(len(thousand_q)) with open('trivia_db.txt', 'w') as convert_file: convert_file.write(json.dumps(thousand_q)) # print(type(data)) # print(data)