dnspy3-server/utils/whoisData.py

39 lines
1.3 KiB
Python

import whois
class WhoIS():
def __init__(self, domain):
self.domain = domain
self.getWhois(domain)
def getWhois(self, domain):
whoisData = whois.whois.Whois(domain).query()
whoisData = whois.parser.Parser(domain, whoisData[1]).parse()
self.registrar = whoisData.get('Registrar')
self.status = whoisData.get('Status')
self.registrant = self.buildRegistrantInfo(whoisData)
self.nameservers = self.splitNameservers(
whoisData.get('NameServer'))
self.createDate = whoisData.get('CreationDate')
self.expireDate = whoisData.get('ExpirationDate')
# self.nameservers = whoisData.get('NameServer')
def buildRegistrantInfo(self, whoisData):
print(whoisData)
ret = {}
ret['registrantName'] = whoisData.get('RegistrantName')
ret['eligibilityType'] = whoisData.get('EligibilityType')
ret['registrantID'] = whoisData.get('RegistrantID')
return ret
# I hate this, kill me now
def splitNameservers(self, nameservers):
ret = []
if '\n' in nameservers[0]:
nameservers = nameservers[0]
nameservers = nameservers.split('\n')
for x in nameservers:
ret.append(x.strip())
return ret
return nameservers