import requests import sys import json import datetime # Provide your keys apikey = "your_api_key" apisecret = "your_secret_key" # apiurl = "https://api.codepunch.com/dnfeed.php" # get_api_token # token = get_api_token() def get_api_token(): parameters = {"c": "auth", "k": apikey, "s": apisecret} response = requests.get(apiurl, params=parameters) if(response.status_code == 200): if response.content.startswith(b"OK: "): return response.content[4:]; else: raise Exception('Authentication: {}' . format(response.content)) else: raise Exception('Authentication: {}' . format(response.status_code)) # get_api_data # parameters = {"t": token, "d": "20200624", "f": "json", "limit": 50, "kw": "%apple%"} # thedata = get_api_data(parameters) # domaindata = json.loads(thedata) # for d in domaindata['domains']: # print (d['domain']) def get_api_data(parameters): response = requests.get(apiurl, params=parameters) if(response.status_code == 200): if response.content.startswith(b"Error: "): raise Exception(format(response.content[7:])) else: raise Exception('Invalid response code: {}' . format(response.status_code)) return response.content; # get_api_zip_file # parameters = {"t": token, "c": "latestzip", "src": "added"} # get_api_zip_file(parameters, "latest.zip") def get_api_zip_file(parameters, filename): response = requests.get(apiurl, params=parameters) totalbits = 0 if response.status_code == 200: with open(filename, 'wb') as f: for chunk in response.iter_content(chunk_size=1024): if chunk: totalbits += 1024 f.write(chunk) print("Downloaded",totalbits*1025,"KB...") # Get the token and then the data try: token = get_api_token() yesterday = datetime.date.today() - datetime.timedelta(days=1) datecode = yesterday.strftime("%Y%m%d") keywords = "%apple%" parameters = {"t": token, "d": datecode, "f": "json", "limit": 50, "kw": keywords} thedata = get_api_data(parameters) domaindata = json.loads(thedata) for d in domaindata['domains']: print (d['domain']) # download the zip file parameters = {"t": token, "c": "latestzip", "src": "added"} get_api_zip_file(parameters, "latest.zip") except Exception as e: print(repr(e));