#!/usr/bin/python2.7 import whois import readline import signal from pprint import pprint running = 1 prompt = '$ ' indent = '~ ' whoisrecs = ["NotFound", "DomainName", "Registrar", "Status", "UpdatedDate", "CreationDate", "ExpirationDate", "RegistrantName", "EligibilityName", "Eligibilitytype", "NameServer"] def domainWhois(inData): whoisData = whois.whois(inData).query() return whois.Parser(inData, whoisData[1]).parse() def signal_handler(singal, frame): #print('\n') quit() def printWhois(resultData): try: for recType in whoisrecs: for item in resultData[recType]: print(indent + '%s: %s' % (recType, item)) except Exception as e: pass def parseInput(inData): if inData.lower() == "quit": quit() #Assume the input is a domain name result = domainWhois(inData) # for results in result: # for item in result[results]: # print('%s: %s' % (results, item)) printWhois(result) #print(result) signal.signal(signal.SIGINT, signal_handler) while running == 1: parseInput(raw_input("Please Enter a domain" + prompt) )