diff --git a/pythonwhois/net.py b/pythonwhois/net.py index 4393b0b..b0dd315 100644 --- a/pythonwhois/net.py +++ b/pythonwhois/net.py @@ -3,13 +3,25 @@ from codecs import encode, decode from . import shared def get_whois_raw(domain, server="", previous=[], rfc3490=True): - + # Sometimes IANA simply won't give us the right root WHOIS server + exceptions = { + ".ac.uk": "whois.ja.net", + ".ps": "whois.pnina.ps" + } + if rfc3490: domain = encode( domain if type(domain) is unicode else decode(domain, "utf8"), "idna" ) if len(previous) == 0: # Root query - target_server = get_root_server(domain) + is_exception = False + for exception, exc_serv in exceptions.iteritems(): + if domain.endswith(exception): + is_exception = True + target_server = exc_serv + break + if is_exception == False: + target_server = get_root_server(domain) else: target_server = server if domain.endswith(".jp") and target_server == "whois.jprs.jp": @@ -30,7 +42,7 @@ def get_whois_raw(domain, server="", previous=[], rfc3490=True): response = record break for line in [x.strip() for x in response.splitlines()]: - match = re.match("(refer|whois server|referral url|whois server|registrar whois):\s*([^\s]+)", line, re.IGNORECASE) + match = re.match("(refer|whois server|referral url|whois server|registrar whois):\s*([^\s]+\.[^\s]+)", line, re.IGNORECASE) if match is not None: referal_server = match.group(2) if referal_server != server: diff --git a/pythonwhois/parse.py b/pythonwhois/parse.py index 6c54669..2f6845b 100644 --- a/pythonwhois/parse.py +++ b/pythonwhois/parse.py @@ -86,16 +86,18 @@ grammar = { 'Registrar Whois:\s?(?P.+)'], 'nameservers': ['Name Server:[ ]*(?P[^ ]+)', 'Nameservers:[ ]*(?P[^ ]+)', - '(?[a-z]*d?ns[0-9]+([a-z]{3})?\.([a-z0-9-]+\.)+[a-z0-9]+)', + '(?<=[ .]{2})(?P([a-z0-9-]+\.)+[a-z0-9]+)(\s+([0-9]{1,3}\.){3}[0-9]{1,3})', 'nameserver:\s*(?P.+)', 'nserver:\s*(?P[^[\s]+)', 'Name Server[.]+ (?P[^[\s]+)', + 'Hostname:\s*(?P[^\s]+)', 'DNS[0-9]+:\s*(?P.+)', 'ns[0-9]+:\s*(?P.+)', 'NS [0-9]+\s*:\s*(?P.+)', - '(?[a-z0-9-]+\.d?ns[0-9]*\.([a-z0-9-]+\.)+[a-z0-9]+)', - '(?([a-z0-9-]+\.)+[a-z0-9]+)(\s+([0-9]{1,3}\.){3}[0-9]{1,3})', - '(?d?ns\.([a-z0-9-]+\.)+[a-z0-9]+)', + '\[Name Server\]\s*(?P.+)', + '(?<=[ .]{2})(?P[a-z0-9-]+\.d?ns[0-9]*\.([a-z0-9-]+\.)+[a-z0-9]+)', + '(?<=[ .]{2})(?P([a-z0-9-]+\.)+[a-z0-9]+)(\s+([0-9]{1,3}\.){3}[0-9]{1,3})', + '(?<=[ .]{2})[^a-z0-9.-](?Pd?ns\.([a-z0-9-]+\.)+[a-z0-9]+)', 'Nserver:\s*(?P.+)'], 'emails': ['(?P[\w.-]+@[\w.-]+\.[\w]{2,6})', # Really need to fix this, much longer TLDs now exist... '(?P[\w.-]+\sAT\s[\w.-]+\sDOT\s[\w]{2,6})'] @@ -103,9 +105,8 @@ grammar = { "_dateformats": ( '(?P[0-9]{1,2})[./ -](?PJan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)[./ -](?P[0-9]{4}|[0-9]{2})' '(\s+(?P[0-9]{1,2})[:.](?P[0-9]{1,2})[:.](?P[0-9]{1,2}))?', - '[a-z]{3}\s(?PJan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)[./ -](?P[0-9]{1,2})' - '(\s+(?P[0-9]{1,2})[:.](?P[0-9]{1,2})[:.](?P[0-9]{1,2}))?' - '\s[a-z]{3}\s(?P[0-9]{4}|[0-9]{2})', + '[a-z]{3}\s(?PJan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)[./ -](?P[0-9]{1,2})(\s+(?P[0-9]{1,2})[:.](?P[0-9]{1,2})[:.](?P[0-9]{1,2}))?\s[a-z]{3}\s(?P[0-9]{4}|[0-9]{2})', + '[a-zA-Z]+\s(?P[0-9]{1,2})(?:st|nd|rd|th)\s(?PJan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec|January|February|March|April|May|June|July|August|September|October|November|December)\s(?P[0-9]{4})', '(?P[0-9]{4})[./-]?(?P[0-9]{2})[./-]?(?P[0-9]{2})(\s|T|/)((?P[0-9]{1,2})[:.-](?P[0-9]{1,2})[:.-](?P[0-9]{1,2}))', '(?P[0-9]{4})[./-](?P[0-9]{1,2})[./-](?P[0-9]{1,2})', '(?P[0-9]{1,2})[./ -](?P[0-9]{1,2})[./ -](?P[0-9]{4}|[0-9]{2})', @@ -171,15 +172,17 @@ def parse_raw_whois(raw_data, normalized=[]): except KeyError as e: data[rule_key] = [val] - # Whois.com is a bit special... Fabulous.com also seems to use this format. - match = re.search("Name [Ss]ervers:([/s/S]+)\n\n", segment) + # Whois.com is a bit special... Fabulous.com also seems to use this format. As do some others. + match = re.search("^\s?Name\s?[Ss]ervers:\s*\n((?:\s*.+\n)+?\s?)\n", segment, re.MULTILINE) if match is not None: chunk = match.group(1) - for match in re.findall("[ ]+(.+)\n", chunk): - try: - data["nameservers"].append(match.strip()) - except KeyError as e: - data["nameservers"] = [match.strip()] + for match in re.findall("[ ]*(.+)\n", chunk): + if match.strip() != "": + if not re.match("^[a-zA-Z]+:", match): + try: + data["nameservers"].append(match.strip()) + except KeyError as e: + data["nameservers"] = [match.strip()] # Nominet also needs some special attention match = re.search(" Registrar:\n (.+)\n", segment) if match is not None: @@ -187,7 +190,7 @@ def parse_raw_whois(raw_data, normalized=[]): match = re.search(" Registration status:\n (.+)\n", segment) if match is not None: data["status"] = [match.group(1).strip()] - match = re.search(" Name servers:([\s\S]*?\n)\n", segment) + match = re.search(" Name servers:\n([\s\S]*?\n)\n", segment) if match is not None: chunk = match.group(1) for match in re.findall(" (.+)\n", chunk): @@ -196,6 +199,28 @@ def parse_raw_whois(raw_data, normalized=[]): data["nameservers"].append(match.strip()) except KeyError as e: data["nameservers"] = [match.strip()] + # janet (.ac.uk) is kinda like Nominet, but also kinda not + match = re.search("Registered By:\n\t(.+)\n", segment) + if match is not None: + data["registrar"] = [match.group(1).strip()] + match = re.search("Entry created:\n\t(.+)\n", segment) + if match is not None: + data["creation_date"] = [match.group(1).strip()] + match = re.search("Renewal date:\n\t(.+)\n", segment) + if match is not None: + data["expiration_date"] = [match.group(1).strip()] + match = re.search("Entry updated:\n\t(.+)\n", segment) + if match is not None: + data["updated_date"] = [match.group(1).strip()] + match = re.search("Servers:([\s\S]*?\n)\n", segment) + if match is not None: + chunk = match.group(1) + for match in re.findall("\t(.+)\n", chunk): + match = match.split()[0] + try: + data["nameservers"].append(match.strip()) + except KeyError as e: + data["nameservers"] = [match.strip()] # .am plays the same game match = re.search(" DNS servers:([\s\S]*?\n)\n", segment) if match is not None: @@ -225,6 +250,7 @@ def parse_raw_whois(raw_data, normalized=[]): match = re.search('ren-status:\s*(.+)', segment) if match is not None: data["status"].insert(0, match.group(1).strip()) + data["contacts"] = parse_registrants(raw_data) @@ -248,6 +274,7 @@ def parse_raw_whois(raw_data, normalized=[]): pass # Not present try: + data['nameservers'] = remove_suffixes(data['nameservers']) data['nameservers'] = remove_duplicates([ns.rstrip(".") for ns in data['nameservers']]) except KeyError as e: pass # Not present @@ -452,6 +479,16 @@ def remove_duplicates(data): return cleaned_list +def remove_suffixes(data): + # Removes everything before and after the first non-whitespace continuous string. + # Used to get rid of IP suffixes for nameservers. + cleaned_list = [] + + for entry in data: + cleaned_list.append(re.search("([^\s]+)\s*[\s]*", entry).group(1).lstrip()) + + return cleaned_list + def preprocess_regex(regex): return re.sub(r"\\s\*\(\?P<([^>]+)>\.\+\)", r"\s*(?P<\1>\S.*)", regex) @@ -468,7 +505,7 @@ def parse_registrants(data): "Registrant ID:(?P.+)\nRegistrant Name:(?P.*)\n(?:Registrant Organization:(?P.*)\n)?Registrant Address1?:(?P.*)\n(?:Registrant Address2:(?P.*)\n)?(?:Registrant Address3:(?P.*)\n)?Registrant City:(?P.*)\nRegistrant State/Province:(?P.*)\nRegistrant Country/Economy:(?P.*)\nRegistrant Postal Code:(?P.*)\nRegistrant Phone:(?P.*)\n(?:Registrant Phone Ext.:(?P.*)\n)?(?:Registrant FAX:(?P.*)\n)?(?:Registrant FAX Ext.:(?P.*)\n)?Registrant E-mail:(?P.*)", # .ME, DotAsia "Registrant ID:\s*(?P.+)\nRegistrant Name:\s*(?P.+)\nRegistrant Organization:\s*(?P.*)\nRegistrant Address1:\s*(?P.+)\nRegistrant Address2:\s*(?P.*)\nRegistrant City:\s*(?P.+)\nRegistrant State/Province:\s*(?P.+)\nRegistrant Postal Code:\s*(?P.+)\nRegistrant Country:\s*(?P.+)\nRegistrant Country Code:\s*(?P.+)\nRegistrant Phone Number:\s*(?P.+)\nRegistrant Email:\s*(?P.+)\n", # .CO Internet "Registrant Contact: (?P.+)\nRegistrant Organization: (?P.+)\nRegistrant Name: (?P.+)\nRegistrant Street: (?P.+)\nRegistrant City: (?P.+)\nRegistrant Postal Code: (?P.+)\nRegistrant State: (?P.+)\nRegistrant Country: (?P.+)\nRegistrant Phone: (?P.*)\nRegistrant Phone Ext: (?P.*)\nRegistrant Fax: (?P.*)\nRegistrant Fax Ext: (?P.*)\nRegistrant Email: (?P.*)\n", # Key-Systems GmbH - "(?:Registrant ID:[ ]*(?P.*)\n)?Registrant Name:[ ]*(?P.*)\n(?:Registrant Organization:[ ]*(?P.*)\n)?Registrant Street:[ ]*(?P.+)\n(?:Registrant Street:[ ]*(?P.+)\n)?(?:Registrant Street:[ ]*(?P.+)\n)?Registrant City:[ ]*(?P.+)\nRegistrant State(?:\/Province)?:[ ]*(?P.*)\nRegistrant Postal Code:[ ]*(?P.+)\nRegistrant Country:[ ]*(?P.+)\n(?:Registrant Phone:[ ]*(?P.*)\n)?(?:Registrant Phone Ext:[ ]*(?P.*)\n)?(?:Registrant Fax:[ ]*(?P.*)\n)?(?:Registrant Fax Ext:[ ]*(?P.*)\n)?(?:Registrant Email:[ ]*(?P.+)\n)?", # WildWestDomains, GoDaddy, Namecheap/eNom, Ascio, Musedoma (.museum), EuroDNS + "(?:Registrant ID:[ ]*(?P.*)\n)?Registrant Name:[ ]*(?P.*)\n(?:Registrant Organization:[ ]*(?P.*)\n)?Registrant Street:[ ]*(?P.+)\n(?:Registrant Street:[ ]*(?P.+)\n)?(?:Registrant Street:[ ]*(?P.+)\n)?Registrant City:[ ]*(?P.+)\nRegistrant State(?:\/Province)?:[ ]*(?P.*)\nRegistrant Postal Code:[ ]*(?P.+)\nRegistrant Country:[ ]*(?P.+)\n(?:Registrant Phone:[ ]*(?P.*)\n)?(?:Registrant Phone Ext:[ ]*(?P.*)\n)?(?:Registrant Fax:[ ]*(?P.*)\n)?(?:Registrant Fax Ext:[ ]*(?P.*)\n)?(?:Registrant Email:[ ]*(?P.+)\n)?", # WildWestDomains, GoDaddy, Namecheap/eNom, Ascio, Musedoma (.museum), EuroDNS, nic.ps "Registrant\n(?: (?P.+)\n)? (?P.+)\n Email:(?P.+)\n (?P.+)\n(?: (?P.+)\n)? (?P.+) (?P.+)\n (?P.+)\n Tel: (?P.+)\n\n", # internet.bs " Registrant Contact Details:[ ]*\n (?P.*)\n (?P.*)[ ]{2,}\((?P.*)\)\n (?P.*)\n(?: (?P.*)\n)?(?: (?P.*)\n)? (?P.*)\n (?P.*),(?P.*)\n (?P.*)\n Tel. (?P.*)", # Whois.com "owner-id:[ ]*(?P.*)\n(?:owner-organization:[ ]*(?P.*)\n)?owner-name:[ ]*(?P.*)\nowner-street:[ ]*(?P.*)\nowner-city:[ ]*(?P.*)\nowner-zip:[ ]*(?P.*)\nowner-country:[ ]*(?P.*)\n(?:owner-phone:[ ]*(?P.*)\n)?(?:owner-fax:[ ]*(?P.*)\n)?owner-email:[ ]*(?P.*)", # InterNetworX @@ -482,7 +519,8 @@ def parse_registrants(data): "Eligibility Type:[ ]*Citizen\/Resident\n[\s\S]*Registrant Contact ID:[ ]*(?P.+)\n[\s\S]*Registrant Contact Name:[ ]*(?P.+)\n", # .au individual "Registrant:[ ]*(?P.+)\n[\s\S]*Eligibility Type:[ ]*(Higher Education Institution|Company|Incorporated Association|Other)\n[\s\S]*Registrant Contact ID:[ ]*(?P.+)\n[\s\S]*Registrant Contact Name:[ ]*(?P.+)\n", # .au educational, company, 'incorporated association' (non-profit?), other (spotted for linux.conf.au, unsure if also for others) " Registrant:\n (?P.+)\n\n Registrant type:\n .*\n\n Registrant's address:\n The registrant .* opted to have", # Nominet (.uk) with hidden address - " Registrant:\n (?P.+)\n\n[\s\S]* Registrant type:\n .*\n\n Registrant's address:\n (?P.+)\n(?: (?P.+)\n)?(?: (?P.+)\n)? (?P.+)\n (?P.+)\n (?P.+)\n (?P.+)\n\n", # Nominet (.uk) with visible address + " Registrant:\n (?P.+)\n\n[\s\S]* Registrant type:\n .*\n\n Registrant's address:\n (?P.+)\n(?: (?P.+)\n(?: (?P.+)\n)??)?? (?P[^0-9\n]+)\n(?: (?P.+)\n)? (?P.+)\n (?P.+)\n\n", # Nominet (.uk) with visible address + "Domain Owner:\n\t(?P.+)\n\n[\s\S]*?(?:Registrant Contact:\n\t(?P.+))?\n\nRegistrant(?:'s)? (?:a|A)ddress:(?:\n\t(?P.+)\n(?:\t(?P.+)\n)?(?:\t(?P.+)\n)?\t(?P.+)\n\t(?P.+))?\n\t(?P.+)(?:\n\t(?P.+) \(Phone\)\n\t(?P.+) \(FAX\)\n\t(?P.+))?\n\n", # .ac.uk - what a mess... "Registrant contact:\n (?P.+)\n (?P.*)\n (?P.+), (?P.+) (?P.+) (?P.+)\n\n", # Fabulous.com "registrant-name:\s*(?P.+)\nregistrant-type:\s*(?P.+)\nregistrant-address:\s*(?P.+)\nregistrant-postcode:\s*(?P.+)\nregistrant-city:\s*(?P.+)\nregistrant-country:\s*(?P.+)\n(?:registrant-phone:\s*(?P.+)\n)?(?:registrant-email:\s*(?P.+)\n)?", # Hetzner "Registrant Contact Information :[ ]*\n[ ]+(?P.*)\n[ ]+(?P.*)\n[ ]+(?P.*)\n[ ]+(?P.*)\n[ ]+(?P.*)\n[ ]+(?P.*)\n[ ]+(?P.*)\n[ ]+(?P.*)\n[ ]+(?P.*)\n\n", # GAL Communication @@ -500,7 +538,7 @@ def parse_registrants(data): "Tech(?:nical)? ID:(?P.+)\nTech(?:nical)? Name:(?P.*)\n(?:Tech(?:nical)? Organization:(?P.*)\n)?Tech(?:nical)? Address1?:(?P.*)\n(?:Tech(?:nical)? Address2:(?P.*)\n)?(?:Tech(?:nical)? Address3:(?P.*)\n)?Tech(?:nical)? City:(?P.*)\nTech(?:nical)? State/Province:(?P.*)\nTech(?:nical)? Country/Economy:(?P.*)\nTech(?:nical)? Postal Code:(?P.*)\nTech(?:nical)? Phone:(?P.*)\n(?:Tech(?:nical)? Phone Ext.:(?P.*)\n)?(?:Tech(?:nical)? FAX:(?P.*)\n)?(?:Tech(?:nical)? FAX Ext.:(?P.*)\n)?Tech(?:nical)? E-mail:(?P.*)", # .ME, DotAsia "Technical Contact ID:\s*(?P.+)\nTechnical Contact Name:\s*(?P.+)\nTechnical Contact Organization:\s*(?P.*)\nTechnical Contact Address1:\s*(?P.+)\nTechnical Contact Address2:\s*(?P.*)\nTechnical Contact City:\s*(?P.+)\nTechnical Contact State/Province:\s*(?P.+)\nTechnical Contact Postal Code:\s*(?P.+)\nTechnical Contact Country:\s*(?P.+)\nTechnical Contact Country Code:\s*(?P.+)\nTechnical Contact Phone Number:\s*(?P.+)\nTechnical Contact Email:\s*(?P.+)\n", # .CO Internet "Tech Contact: (?P.+)\nTech Organization: (?P.+)\nTech Name: (?P.+)\nTech Street: (?P.+)\nTech City: (?P.+)\nTech Postal Code: (?P.+)\nTech State: (?P.+)\nTech Country: (?P.+)\nTech Phone: (?P.*)\nTech Phone Ext: (?P.*)\nTech Fax: (?P.*)\nTech Fax Ext: (?P.*)\nTech Email: (?P.*)\n", # Key-Systems GmbH - "(?:Tech ID:[ ]*(?P.*)\n)?Tech[ ]*Name:[ ]*(?P.*)\n(?:Tech[ ]*Organization:[ ]*(?P.*)\n)?Tech[ ]*Street:[ ]*(?P.+)\n(?:Tech[ ]*Street:[ ]*(?P.+)\n)?(?:Tech[ ]*Street:[ ]*(?P.+)\n)?Tech[ ]*City:[ ]*(?P.+)\nTech[ ]*State(?:\/Province)?:[ ]*(?P.*)\nTech[ ]*Postal[ ]*Code:[ ]*(?P.+)\nTech[ ]*Country:[ ]*(?P.+)\n(?:Tech[ ]*Phone:[ ]*(?P.*)\n)?(?:Tech[ ]*Phone[ ]*Ext:[ ]*(?P.*)\n)?(?:Tech[ ]*Fax:[ ]*(?P.*)\n)?(?:Tech[ ]*Fax[ ]*Ext:\s*?(?P.*)\n)?(?:Tech[ ]*Email:[ ]*(?P.+)\n)?", # WildWestDomains, GoDaddy, Namecheap/eNom, Ascio, Musedoma (.museum), EuroDNS + "(?:Tech ID:[ ]*(?P.*)\n)?Tech[ ]*Name:[ ]*(?P.*)\n(?:Tech[ ]*Organization:[ ]*(?P.*)\n)?Tech[ ]*Street:[ ]*(?P.+)\n(?:Tech[ ]*Street:[ ]*(?P.+)\n)?(?:Tech[ ]*Street:[ ]*(?P.+)\n)?Tech[ ]*City:[ ]*(?P.+)\nTech[ ]*State(?:\/Province)?:[ ]*(?P.*)\nTech[ ]*Postal[ ]*Code:[ ]*(?P.+)\nTech[ ]*Country:[ ]*(?P.+)\n(?:Tech[ ]*Phone:[ ]*(?P.*)\n)?(?:Tech[ ]*Phone[ ]*Ext:[ ]*(?P.*)\n)?(?:Tech[ ]*Fax:[ ]*(?P.*)\n)?(?:Tech[ ]*Fax[ ]*Ext:\s*?(?P.*)\n)?(?:Tech[ ]*Email:[ ]*(?P.+)\n)?", # WildWestDomains, GoDaddy, Namecheap/eNom, Ascio, Musedoma (.museum), EuroDNS, nic.ps "Technical Contact\n(?: (?P.+)\n)? (?P.+)\n Email:(?P.+)\n (?P.+)\n(?: (?P.+)\n)? (?P.+) (?P.+)\n (?P.+)\n Tel: (?P.+)\n\n", # internet.bs " Technical Contact Details:[ ]*\n (?P.*)\n (?P.*)[ ]{2,}\((?P.*)\)\n (?P.*)\n(?: (?P.*)\n)?(?: (?P.*)\n)? (?P.*)\n (?P.*),(?P.*)\n (?P.*)\n Tel. (?P.*)", # Whois.com "tech-id:[ ]*(?P.*)\n(?:tech-organization:[ ]*(?P.*)\n)?tech-name:[ ]*(?P.*)\ntech-street:[ ]*(?P.*)\ntech-city:[ ]*(?P.*)\ntech-zip:[ ]*(?P.*)\ntech-country:[ ]*(?P.*)\n(?:tech-phone:[ ]*(?P.*)\n)?(?:tech-fax:[ ]*(?P.*)\n)?tech-email:[ ]*(?P.*)", # InterNetworX @@ -524,7 +562,7 @@ def parse_registrants(data): "Admin(?:istrative)? ID:(?P.+)\nAdmin(?:istrative)? Name:(?P.*)\n(?:Admin(?:istrative)? Organization:(?P.*)\n)?Admin(?:istrative)? Address1?:(?P.*)\n(?:Admin(?:istrative)? Address2:(?P.*)\n)?(?:Admin(?:istrative)? Address3:(?P.*)\n)?Admin(?:istrative)? City:(?P.*)\nAdmin(?:istrative)? State/Province:(?P.*)\nAdmin(?:istrative)? Country/Economy:(?P.*)\nAdmin(?:istrative)? Postal Code:(?P.*)\nAdmin(?:istrative)? Phone:(?P.*)\n(?:Admin(?:istrative)? Phone Ext.:(?P.*)\n)?(?:Admin(?:istrative)? FAX:(?P.*)\n)?(?:Admin(?:istrative)? FAX Ext.:(?P.*)\n)?Admin(?:istrative)? E-mail:(?P.*)", # .ME, DotAsia "Administrative Contact ID:\s*(?P.+)\nAdministrative Contact Name:\s*(?P.+)\nAdministrative Contact Organization:\s*(?P.*)\nAdministrative Contact Address1:\s*(?P.+)\nAdministrative Contact Address2:\s*(?P.*)\nAdministrative Contact City:\s*(?P.+)\nAdministrative Contact State/Province:\s*(?P.+)\nAdministrative Contact Postal Code:\s*(?P.+)\nAdministrative Contact Country:\s*(?P.+)\nAdministrative Contact Country Code:\s*(?P.+)\nAdministrative Contact Phone Number:\s*(?P.+)\nAdministrative Contact Email:\s*(?P.+)\n", # .CO Internet "Admin Contact: (?P.+)\nAdmin Organization: (?P.+)\nAdmin Name: (?P.+)\nAdmin Street: (?P.+)\nAdmin City: (?P.+)\nAdmin State: (?P.+)\nAdmin Postal Code: (?P.+)\nAdmin Country: (?P.+)\nAdmin Phone: (?P.*)\nAdmin Phone Ext: (?P.*)\nAdmin Fax: (?P.*)\nAdmin Fax Ext: (?P.*)\nAdmin Email: (?P.*)\n", # Key-Systems GmbH - "(?:Admin ID:[ ]*(?P.*)\n)?Admin[ ]*Name:[ ]*(?P.*)\n(?:Admin[ ]*Organization:[ ]*(?P.*)\n)?Admin[ ]*Street:[ ]*(?P.+)\n(?:Admin[ ]*Street:[ ]*(?P.+)\n)?(?:Admin[ ]*Street:[ ]*(?P.+)\n)?Admin[ ]*City:[ ]*(?P.+)\nAdmin[ ]*State(?:\/Province)?:[ ]*(?P.*)\nAdmin[ ]*Postal[ ]*Code:[ ]*(?P.+)\nAdmin[ ]*Country:[ ]*(?P.+)\n(?:Admin[ ]*Phone:[ ]*(?P.*)\n)?(?:Admin[ ]*Phone[ ]*Ext:[ ]*(?P.*)\n)?(?:Admin[ ]*Fax:[ ]*(?P.*)\n)?(?:Admin[ ]*Fax[ ]*Ext:\s*?(?P.*)\n)?(?:Admin[ ]*Email:[ ]*(?P.+)\n)?", # WildWestDomains, GoDaddy, Namecheap/eNom, Ascio, Musedoma (.museum), EuroDNS + "(?:Admin ID:[ ]*(?P.*)\n)?Admin[ ]*Name:[ ]*(?P.*)\n(?:Admin[ ]*Organization:[ ]*(?P.*)\n)?Admin[ ]*Street:[ ]*(?P.+)\n(?:Admin[ ]*Street:[ ]*(?P.+)\n)?(?:Admin[ ]*Street:[ ]*(?P.+)\n)?Admin[ ]*City:[ ]*(?P.+)\nAdmin[ ]*State(?:\/Province)?:[ ]*(?P.*)\nAdmin[ ]*Postal[ ]*Code:[ ]*(?P.+)\nAdmin[ ]*Country:[ ]*(?P.+)\n(?:Admin[ ]*Phone:[ ]*(?P.*)\n)?(?:Admin[ ]*Phone[ ]*Ext:[ ]*(?P.*)\n)?(?:Admin[ ]*Fax:[ ]*(?P.*)\n)?(?:Admin[ ]*Fax[ ]*Ext:\s*?(?P.*)\n)?(?:Admin[ ]*Email:[ ]*(?P.+)\n)?", # WildWestDomains, GoDaddy, Namecheap/eNom, Ascio, Musedoma (.museum), EuroDNS, nic.ps "Administrative Contact\n(?: (?P.+)\n)? (?P.+)\n Email:(?P.+)\n (?P.+)\n(?: (?P.+)\n)? (?P.+) (?P.+)\n (?P.+)\n Tel: (?P.+)\n\n", # internet.bs " Administrative Contact Details:[ ]*\n (?P.*)\n (?P.*)[ ]{2,}\((?P.*)\)\n (?P.*)\n(?: (?P.*)\n)?(?: (?P.*)\n)? (?P.*)\n (?P.*),(?P.*)\n (?P.*)\n Tel. (?P.*)", # Whois.com "admin-id:[ ]*(?P.*)\n(?:admin-organization:[ ]*(?P.*)\n)?admin-name:[ ]*(?P.*)\nadmin-street:[ ]*(?P.*)\nadmin-city:[ ]*(?P.*)\nadmin-zip:[ ]*(?P.*)\nadmin-country:[ ]*(?P.*)\n(?:admin-phone:[ ]*(?P.*)\n)?(?:admin-fax:[ ]*(?P.*)\n)?admin-email:[ ]*(?P.*)", # InterNetworX @@ -543,7 +581,7 @@ def parse_registrants(data): "Billing ID:(?P.+)\nBilling Name:(?P.*)\n(?:Billing Organization:(?P.*)\n)?Billing Address1?:(?P.*)\n(?:Billing Address2:(?P.*)\n)?(?:Billing Address3:(?P.*)\n)?Billing City:(?P.*)\nBilling State/Province:(?P.*)\nBilling Country/Economy:(?P.*)\nBilling Postal Code:(?P.*)\nBilling Phone:(?P.*)\n(?:Billing Phone Ext.:(?P.*)\n)?(?:Billing FAX:(?P.*)\n)?(?:Billing FAX Ext.:(?P.*)\n)?Billing E-mail:(?P.*)", # DotAsia "Billing Contact ID:\s*(?P.+)\nBilling Contact Name:\s*(?P.+)\nBilling Contact Organization:\s*(?P.*)\nBilling Contact Address1:\s*(?P.+)\nBilling Contact Address2:\s*(?P.*)\nBilling Contact City:\s*(?P.+)\nBilling Contact State/Province:\s*(?P.+)\nBilling Contact Postal Code:\s*(?P.+)\nBilling Contact Country:\s*(?P.+)\nBilling Contact Country Code:\s*(?P.+)\nBilling Contact Phone Number:\s*(?P.+)\nBilling Contact Email:\s*(?P.+)\n", # .CO Internet "Billing Contact: (?P.+)\nBilling Organization: (?P.+)\nBilling Name: (?P.+)\nBilling Street: (?P.+)\nBilling City: (?P.+)\nBilling Postal Code: (?P.+)\nBilling State: (?P.+)\nBilling Country: (?P.+)\nBilling Phone: (?P.*)\nBilling Phone Ext: (?P.*)\nBilling Fax: (?P.*)\nBilling Fax Ext: (?P.*)\nBilling Email: (?P.*)\n", # Key-Systems GmbH - "(?:Billing ID:[ ]*(?P.*)\n)?Billing[ ]*Name:[ ]*(?P.*)\nBilling[ ]*Organization:[ ]*(?P.*)\nBilling[ ]*Street:[ ]*(?P.+)\n(?:Billing[ ]*Street:[ ]*(?P.+)\n)?Billing[ ]*City:[ ]*(?P.+)\nBilling[ ]*State\/Province:[ ]*(?P.+)\nBilling[ ]*Postal[ ]*Code:[ ]*(?P.+)\nBilling[ ]*Country:[ ]*(?P.+)\n(?:Billing[ ]*Phone:[ ]*(?P.*)\n)?(?:Billing[ ]*Phone[ ]*Ext:[ ]*(?P.*)\n)?(?:Billing[ ]*Fax:[ ]*(?P.*)\n)?(?:Billing[ ]*Fax[ ]*Ext:\s*?(?P.*)\n)?(?:Billing[ ]*Email:[ ]*(?P.+)\n)?", # Musedoma (.museum) + "(?:Billing ID:[ ]*(?P.*)\n)?Billing[ ]*Name:[ ]*(?P.*)\n(?:Billing[ ]*Organization:[ ]*(?P.*)\n)?Billing[ ]*Street:[ ]*(?P.+)\n(?:Billing[ ]*Street:[ ]*(?P.+)\n)?Billing[ ]*City:[ ]*(?P.+)\nBilling[ ]*State\/Province:[ ]*(?P.+)\nBilling[ ]*Postal[ ]*Code:[ ]*(?P.+)\nBilling[ ]*Country:[ ]*(?P.+)\n(?:Billing[ ]*Phone:[ ]*(?P.*)\n)?(?:Billing[ ]*Phone[ ]*Ext:[ ]*(?P.*)\n)?(?:Billing[ ]*Fax:[ ]*(?P.*)\n)?(?:Billing[ ]*Fax[ ]*Ext:\s*?(?P.*)\n)?(?:Billing[ ]*Email:[ ]*(?P.+)\n)?", # Musedoma (.museum) "Billing Contact:\n (?P.+)\n (?P.+)\n(?: (?P.*)\n)?(?: (?P.*)\n)? (?P.+), (?P.+)\n (?P.+)\n (?P.+)\n (?P.+)\n\n", # OVH " Billing Contact Details:[ ]*\n (?P.*)\n (?P.*)[ ]{2,}\((?P.*)\)\n (?P.*)\n(?: (?P.*)\n)?(?: (?P.*)\n)? (?P.*)\n (?P.*),(?P.*)\n (?P.*)\n Tel. (?P.*)", # Whois.com "billing-id:[ ]*(?P.*)\n(?:billing-organization:[ ]*(?P.*)\n)?billing-name:[ ]*(?P.*)\nbilling-street:[ ]*(?P.*)\nbilling-city:[ ]*(?P.*)\nbilling-zip:[ ]*(?P.*)\nbilling-country:[ ]*(?P.*)\n(?:billing-phone:[ ]*(?P.*)\n)?(?:billing-fax:[ ]*(?P.*)\n)?billing-email:[ ]*(?P.*)", # InterNetworX @@ -557,6 +595,7 @@ def parse_registrants(data): nic_contact_regexes = [ "personname:\s*(?P.+)\norganization:\s*(?P.+)\nstreet address:\s*(?P.+)\npostal code:\s*(?P.+)\ncity:\s*(?P.+)\ncountry:\s*(?P.+)\n(?:phone:\s*(?P.+)\n)?(?:fax-no:\s*(?P.+)\n)?(?:e-mail:\s*(?P.+)\n)?nic-hdl:\s*(?P.+)\nchanged:\s*(?P.+)", # nic.at + "contact-handle:[ ]*(?P.+)\ncontact:[ ]*(?P.+)\n(?:organisation:[ ]*(?P.+)\n)?address:[ ]*(?P.+)\n(?:address:[ ]*(?P.+)\n)?(?:address:[ ]*(?P.+)\n)?(?:address:[ ]*(?P.+)\n)?address:[ ]*(?P.+)\naddress:[ ]*(?P.+)\naddress:[ ]*(?P.+)\naddress:[ ]*(?P.+)\n(?:phone:[ ]*(?P.+)\n)?(?:fax:[ ]*(?P.+)\n)?(?:email:[ ]*(?P.+)\n)?", # LCN.com "person:\s*(?P.+)\nnic-hdl:\s*(?P.+)\n", # .ie "nic-hdl:\s*(?P.+)\ntype:\s*(?P.+)\ncontact:\s*(?P.+)\n(?:.+\n)*?(?:address:\s*(?P.+)\naddress:\s*(?P.+)\naddress:\s*(?P.+)\naddress:\s*(?P.+)\n)?(?:phone:\s*(?P.+)\n)?(?:fax-no:\s*(?P.+)\n)?(?:.+\n)*?(?:e-mail:\s*(?P.+)\n)?(?:.+\n)*?changed:\s*(?P[0-9]{2}\/[0-9]{2}\/[0-9]{4}).*\n", # AFNIC madness without country field "nic-hdl:\s*(?P.+)\ntype:\s*(?P.+)\ncontact:\s*(?P.+)\n(?:.+\n)*?(?:address:\s*(?P.+)\n)?(?:address:\s*(?P.+)\n)?(?:address:\s*(?P.+)\n)?(?:phone:\s*(?P.+)\n)?(?:fax-no:\s*(?P.+)\n)?(?:.+\n)*?(?:e-mail:\s*(?P.+)\n)?(?:.+\n)*?changed:\s*(?P[0-9]{2}\/[0-9]{2}\/[0-9]{4}).*\n", # AFNIC madness any country -at all- @@ -567,17 +606,21 @@ def parse_registrants(data): nic_contact_references = { "registrant": [ "registrant:\s*(?P.+)", # nic.at + "owner-contact:\s*(?P.+)", # LCN.com "holder-c:\s*(?P.+)", # AFNIC "holder:\s*(?P.+)", # iis.se (they apparently want to be difficult, and won't give you contact info for the handle over their WHOIS service) ], "tech": [ "tech-c:\s*(?P.+)", # nic.at, AFNIC, iis.se + "technical-contact:\s*(?P.+)", # LCN.com ], "admin": [ "admin-c:\s*(?P.+)", # nic.at, AFNIC, iis.se + "admin-contact:\s*(?P.+)", # LCN.com ], "billing": [ - "billing-c:\s*(?P.+)" # iis.se + "billing-c:\s*(?P.+)", # iis.se + "billing-contact:\s*(?P.+)", # LCN.com ] } @@ -634,8 +677,8 @@ def parse_registrants(data): match = re.search(regex, segment) if match is not None: data_reference = match.groupdict() - if data_reference["handle"] == "-": - pass # Blank + if data_reference["handle"] == "-" or re.match("https?:\/\/", data_reference["handle"]) is not None: + pass # Reference was either blank or a URL; the latter is to deal with false positives for nic.ru else: for contact in handle_contacts: if contact["handle"] == data_reference["handle"]: @@ -660,7 +703,7 @@ def parse_registrants(data): obj[key] = obj[key].strip() if "phone_ext" in obj: if "phone" in obj: - obj["phone"] += "ext. %s" % obj["phone_ext"] + obj["phone"] += " ext. %s" % obj["phone_ext"] del obj["phone_ext"] if "street1" in obj: street_items = [] diff --git a/setup.py b/setup.py index 896369b..3d0ba01 100644 --- a/setup.py +++ b/setup.py @@ -1,7 +1,7 @@ from setuptools import setup setup(name='pythonwhois', - version='2.1.3', + version='2.1.4', description='Module for retrieving and parsing the WHOIS data for a domain. Supports most domains. No dependencies.', author='Sven Slootweg', author_email='pythonwhois@cryto.net', diff --git a/test/data/blackburn.ac.uk b/test/data/blackburn.ac.uk new file mode 100644 index 0000000..90f5edb --- /dev/null +++ b/test/data/blackburn.ac.uk @@ -0,0 +1,40 @@ + +Domain: + blackburn.ac.uk + +Registered For: + Blackburn College + +Domain Owner: + Blackburn College + +Registered By: + Jisc Collections and Janet Limited + +Servers: + arrakis.blackburn.ac.uk 194.82.37.34 + ns4.ja.net + +Registrant Contact: + Imtiyaz Patel + +Registrant Address: + Blackburn College + Feilden St. + Blackburn + BB2 1LH + United Kingdom + +44 1254 292512 (Phone) + +44 1254 694291 (FAX) + i.patel@blackburn.ac.uk + +Renewal date: + Monday 20th Oct 2014 + +Entry updated: + Wednesday 20th March 2013 + +Entry created: + Friday 7th November 2003 + + diff --git a/test/data/bristol.ac.uk b/test/data/bristol.ac.uk new file mode 100644 index 0000000..c53bcec --- /dev/null +++ b/test/data/bristol.ac.uk @@ -0,0 +1,31 @@ + +Domain: + bristol.ac.uk + +Registered For: + University of Bristol + +Domain Owner: + University of Bristol + +Registered By: + Jisc Collections and Janet Limited + +Servers: + ncs.bris.ac.uk 137.222.10.36 + irix.bris.ac.uk + ns3.ja.net + +Registrant Address: + United Kingdom + +Renewal date: + Friday 1st Jan 2016 + +Entry updated: + Sunday 1st December 2013 + +Entry created: + Friday 7th November 2003 + + diff --git a/test/data/direct.gov.uk b/test/data/direct.gov.uk new file mode 100644 index 0000000..9579189 --- /dev/null +++ b/test/data/direct.gov.uk @@ -0,0 +1,51 @@ + Domain name: + gov.uk + + Registrant: + UK Cabinet Office + + Registrant type: + UK Government Body + + Registrant's address: + Government Digital Service + Aviation House, 6th floor + 125 Kingsway + London + OX11 OSG + GB + + Registrar: + No registrar listed. This domain is directly registered with Nominet. + + Relevant dates: + Registered on: before Aug-1996 + Registration status: + No registration status listed. + + Name servers: + ns0.ja.net. + ns2.ja.net. + ns3.ja.net. + ns4.ja.net. + auth50.ns.de.uu.net. + auth00.ns.de.uu.net. + ns1.surfnet.nl. + + + WHOIS lookup made at 16:56:04 23-May-2014 + +-- +This WHOIS information is provided for free by Nominet UK the central registry +for .uk domain names. This information and the .uk WHOIS are: + + Copyright Nominet UK 1996 - 2014. + +You may not access the .uk WHOIS or use any data from it except as permitted +by the terms of use available in full at http://www.nominet.org.uk/whoisterms, +which includes restrictions on: (A) use of the data for advertising, or its +repackaging, recompilation, redistribution or reuse (B) obscuring, removing +or hiding any or all of this notice and (C) exceeding query rate or volume +limits. The data is provided on an 'as-is' basis and may lag behind the +register. Access may be withdrawn or restricted at any time. + diff --git a/test/data/globallatedeals.com b/test/data/globallatedeals.com new file mode 100644 index 0000000..6686810 --- /dev/null +++ b/test/data/globallatedeals.com @@ -0,0 +1,142 @@ +Domain Registration Service Provided By: LCN.com + +The Data in LCN.com's WHOIS database is provided by LCN.com for information +purposes, and to assist persons in obtaining information about or related to a +domain name registration record. LCN.com does not guarantee its accuracy. + +By submitting a WHOIS query, you agree that you will use the data obtained only +for lawful purposes and that, under no circumstances will you use this data to: + +(a) allow, enable, or otherwise support the transmission by e-mail, telephone, +or facsimile of mass, unsolicited, commercial advertising or solicitations to +entities other than the data recipient's own existing customers; or (b) enable +high volume, automated, electronic processes that send queries or data to the +systems of LCN.com, except as reasonably necessary to register domain names or +modify existing registrations. + +By submitting this query, you agree to abide by this policy. + +LCN.com reserves the right to modify these terms at any time. + + + +domain: globallatedeals.com + +nameserver: ns1.stellatravel.co.uk +nameserver: ns2.stellatravel.co.uk +nameserver: ns3.stellatravel.co.uk + +owner-contact: LCN-816093 +admin-contact: LCN-816093 +technical-contact: AI-300624 +billing-contact: AI-300624 + +created: 2002-04-04 04:13:20 +expires: 2016-04-04 08:13:20 +changed: 2014-03-14 02:52:43.17135 + +contact-handle: LCN-816093 +contact: Paul Edwards +organisation: The Global Travel Group Limited +address: Ground Floor East, Bowling Mill +address: Dean Clough +address: West Yorkshire +address: HX3 5AX +address: GB +phone: +44.1274422167 +email: paul.edwards@sunmaster.co.uk + +contact-handle: AI-300624 +contact: Hostmaster +address: Units H, J, K +address: Gateway 1000 +address: Whittle Way +address: Stevenage +address: England +address: SG1 2FP +address: GB +phone: +44.1438342490 +fax: +44.1438300137 +email: support@lcn.com + + ***************************************************************************** +******************************************************************************* +** ** +** Domain Registration Service Provided By: LCN.com ** +** ------------------------------------------------ ** +** ** +** ** +** - For award winning domain name services visit: ** +** ** +** http://www.lcn.com/domain_names ** +** ** +** - For powerful & reliable web hosting backed by a 30 day money ** +** backed guarantee visit: ** +** ** +** http://www.lcn.com/web_hosting ** +** ** +** - For support visit: ** +** ** +** http://www.lcn.com/contact_us ** +** ** +******************************************************************************* + ***************************************************************************** + + +-- + +Whois Server Version 2.0 + +Domain names in the .com and .net domains can now be registered +with many different competing registrars. Go to http://www.internic.net +for detailed information. + + Domain Name: GLOBALLATEDEALS.COM + Registrar: LCN.COM LTD. + Whois Server: whois.lcn.com + Referral URL: http://www.lcn.com + Name Server: NS1.STELLATRAVEL.CO.UK + Name Server: NS2.STELLATRAVEL.CO.UK + Name Server: NS3.STELLATRAVEL.CO.UK + Status: clientDeleteProhibited + Status: clientTransferProhibited + Status: clientUpdateProhibited + Updated Date: 13-mar-2014 + Creation Date: 04-apr-2002 + Expiration Date: 04-apr-2016 + +>>> Last update of whois database: Tue, 29 Apr 2014 08:47:33 UTC <<< + +NOTICE: The expiration date displayed in this record is the date the +registrar's sponsorship of the domain name registration in the registry is +currently set to expire. This date does not necessarily reflect the expiration +date of the domain name registrant's agreement with the sponsoring +registrar. Users may consult the sponsoring registrar's Whois database to +view the registrar's reported date of expiration for this registration. + +TERMS OF USE: You are not authorized to access or query our Whois +database through the use of electronic processes that are high-volume and +automated except as reasonably necessary to register domain names or +modify existing registrations; the Data in VeriSign Global Registry +Services' ("VeriSign") Whois database is provided by VeriSign for +information purposes only, and to assist persons in obtaining information +about or related to a domain name registration record. VeriSign does not +guarantee its accuracy. By submitting a Whois query, you agree to abide +by the following terms of use: You agree that you may use this Data only +for lawful purposes and that under no circumstances will you use this Data +to: (1) allow, enable, or otherwise support the transmission of mass +unsolicited, commercial advertising or solicitations via e-mail, telephone, +or facsimile; or (2) enable high volume, automated, electronic processes +that apply to VeriSign (or its computer systems). The compilation, +repackaging, dissemination or other use of this Data is expressly +prohibited without the prior written consent of VeriSign. You agree not to +use electronic processes that are automated and high-volume to access or +query the Whois database except as reasonably necessary to register +domain names or modify existing registrations. VeriSign reserves the right +to restrict your access to the Whois database in its sole discretion to ensure +operational stability. VeriSign may restrict or terminate your access to the +Whois database for failure to abide by these terms of use. VeriSign +reserves the right to modify these terms at any time. + +The Registry database contains ONLY .COM, .NET, .EDU domains and +Registrars. diff --git a/test/data/imperial.ac.uk b/test/data/imperial.ac.uk new file mode 100644 index 0000000..1e22ea0 --- /dev/null +++ b/test/data/imperial.ac.uk @@ -0,0 +1,42 @@ + +Domain: + imperial.ac.uk + +Registered For: + Imperial College London + +Domain Owner: + Imperial College of Science, Technology and Medicine + +Registered By: + Imperial College of Science, Technology and Medicine + +Servers: + ns0.ic.ac.uk + ns1.ic.ac.uk + ns2.ic.ac.uk + authdns1.csx.cam.ac.uk + +Registrant Contact: + Imperial College Hostmaster + +Registrant Address: + ICT Division + Mechanical Engineering Building + Imperial College~Exhibition Road~London + SW7 2BX + United Kingdom + +44 20 7594 6965 (Phone) + +44 20 7594 6958 (FAX) + hostmaster@imperial.ac.uk + +Renewal date: + Tuesday 14th Apr 2015 + +Entry updated: + Thursday 6th February 2014 + +Entry created: + Friday 7th November 2003 + + diff --git a/test/data/nic.ps b/test/data/nic.ps new file mode 100644 index 0000000..156ff7b --- /dev/null +++ b/test/data/nic.ps @@ -0,0 +1,92 @@ +Domain Name: nic.ps +Domain ID: 24353-PS +WHOIS Server: Palestine PS/Felasteen ccTLD Registry +Referral URL: +Creation Date: 2004-07-28T22:00:00.000Z +Registry Expiry Date: 2014-07-28T22:00:00.000Z +Sponsoring Registrar: Palestinian National Internet Naming Authority (PNINA) +Sponsoring Registrar IANA ID: +Domain Status: ok + +Registrant ID: 24124-PS +Registrant Name: Palestinian National Internet Naming Authority +Registrant Street: El Wehda St.- El Amal Building - Gaza +Registrant City: GAZA +Registrant State/Province: +Registrant Postal Code: +Registrant Country: PS +Registrant Phone: 970-8-2861617 +Registrant Phone Ext: +Registrant Fax: 970-8-2861618 +Registrant Fax Ext: + +Admin ID: 24164-PS +Admin Name: Marwan Radwan +Admin Street: El Wehda St.- El Amal Building +Admin City: Gaza +Admin State/Province: +Admin Postal Code: +Admin Country: PS +Admin Phone: 972-08-2861617 +Admin Phone Ext: 059-781440 +Admin Fax: 972-08-2861618 +Admin Fax Ext: + +Billing ID: 24164-PS +Billing Name: Marwan Radwan +Billing Street: El Wehda St.- El Amal Building +Billing City: Gaza +Billing State/Province: +Billing Postal Code: +Billing Country: PS +Billing Phone: 972-08-2861617 +Billing Phone Ext: 059-781440 +Billing Fax: 972-08-2861618 +Billing Fax Ext: + +Tech ID: 24164-PS +Tech Name: Marwan Radwan +Tech Street: El Wehda St.- El Amal Building +Tech City: Gaza +Tech State/Province: +Tech Postal Code: +Tech Country: PS +Tech Phone: 972-08-2861617 +Tech Phone Ext: 059-781440 +Tech Fax: 972-08-2861618 +Tech Fax Ext: + +Name Server: ns1.pnina.ps +Name Server: ns2.pnina.ps + +DNSSEC: unsigned + + +Additional Section + + +Sponsoring Registrar URL: www.pnina.ps +Sponsoring Registrar Address: 4th Floor, Al-Amal Building Al-Wehda Street Gaza +Sponsoring Registrar Phone: 970-8-2861617 +Sponsoring Registrar Fax: 970-8-2861618 + + +TERMS OF USE: You are not authorized to access or query our Whois +database through the use of electronic processes that are high-volume and +automated. Whois database is provided by PNINA as a service to the internet +community on behalf of PNINA and Its Certified Registrars (CR). (http://www.pnina.ps/registrars/registrars-list/) + +The data is for information purposes only. PNINA does not +guarantee its accuracy. By submitting a Whois query, you agree to abide +by the following terms of use: You agree that you may use this Data only +for lawful purposes and that under no circumstances will you use this Data +to: (1) allow, enable, or otherwise support the transmission of mass +unsolicited, commercial advertising or solicitations via e-mail, telephone, +or facsimile; or (2) enable high volume, automated, electronic processes +that apply to PNINA and it's Certified Registrar's (or PNINA or CR computer systems). The +compilation, repackaging, dissemination or other use of this Data is +expressly prohibited. + + +>>> Last update of WHOIS database: 2014-05-23T11:08:01.989Z <<< + diff --git a/test/data/warwick.ac.uk b/test/data/warwick.ac.uk new file mode 100644 index 0000000..b8a5fe3 --- /dev/null +++ b/test/data/warwick.ac.uk @@ -0,0 +1,40 @@ + +Domain: + warwick.ac.uk + +Registered For: + University of Warwick + +Domain Owner: + University of Warwick + +Registered By: + Jisc Collections and Janet Limited + +Servers: + extdns1.warwick.ac.uk 137.205.84.17 + extdns2.warwick.ac.uk 137.205.84.18 + +Registrant Contact: + Patrick Green + +Registrant Address: + IT Services + Gibbet Hill Road + Coventry + CV4 7AL + United Kingdom + +44 24 7657 4257 (Phone) + +44 24 7652 3267 (FAX) + P.Green@warwick.ac.uk + +Renewal date: + Wednesday 23rd Mar 2016 + +Entry updated: + Sunday 23rd February 2014 + +Entry created: + Monday 10th November 2003 + + diff --git a/test/target_default/blackburn.ac.uk b/test/target_default/blackburn.ac.uk new file mode 100644 index 0000000..46f279f --- /dev/null +++ b/test/target_default/blackburn.ac.uk @@ -0,0 +1 @@ +{"updated_date": ["2013-03-20T00:00:00"], "contacts": {"admin": null, "tech": null, "registrant": {"city": "Blackburn", "fax": "+44 1254 694291", "name": "Imtiyaz Patel", "phone": "+44 1254 292512", "street": "Blackburn College\nFeilden St.", "country": "United Kingdom", "postalcode": "BB2 1LH", "organization": "Blackburn College", "email": "i.patel@blackburn.ac.uk"}, "billing": null}, "nameservers": ["arrakis.blackburn.ac.uk", "ns4.ja.net"], "expiration_date": ["2014-10-20T00:00:00"], "creation_date": ["2003-11-07T00:00:00"], "raw": ["\nDomain:\n\tblackburn.ac.uk\n\nRegistered For:\n\tBlackburn College\n\nDomain Owner:\n\tBlackburn College\n\nRegistered By:\n\tJisc Collections and Janet Limited\n\nServers:\n\tarrakis.blackburn.ac.uk\t194.82.37.34\n\tns4.ja.net\t\n\nRegistrant Contact:\n\tImtiyaz Patel\n\nRegistrant Address:\n\tBlackburn College\n\tFeilden St.\n\tBlackburn\n\tBB2 1LH\n\tUnited Kingdom\n\t+44 1254 292512 (Phone)\n\t+44 1254 694291 (FAX)\n\ti.patel@blackburn.ac.uk \n\nRenewal date:\n\tMonday 20th Oct 2014\n\nEntry updated:\n\tWednesday 20th March 2013\n\nEntry created:\n\tFriday 7th November 2003\n\n\n"], "registrar": ["Jisc Collections and Janet Limited"]} \ No newline at end of file diff --git a/test/target_default/bristol.ac.uk b/test/target_default/bristol.ac.uk new file mode 100644 index 0000000..be48f63 --- /dev/null +++ b/test/target_default/bristol.ac.uk @@ -0,0 +1 @@ +{"updated_date": ["2013-12-01T00:00:00"], "contacts": {"admin": null, "tech": null, "registrant": {"country": "United Kingdom", "organization": "University of Bristol"}, "billing": null}, "nameservers": ["ncs.bris.ac.uk", "irix.bris.ac.uk", "ns3.ja.net"], "expiration_date": ["2016-01-01T00:00:00"], "creation_date": ["2003-11-07T00:00:00"], "raw": ["\nDomain:\n\tbristol.ac.uk\n\nRegistered For:\n\tUniversity of Bristol\n\nDomain Owner:\n\tUniversity of Bristol\n\nRegistered By:\n\tJisc Collections and Janet Limited\n\nServers:\n\tncs.bris.ac.uk\t137.222.10.36\n\tirix.bris.ac.uk\t\n\tns3.ja.net\t\n\nRegistrant Address:\n\tUnited Kingdom\n\nRenewal date:\n\tFriday 1st Jan 2016\n\nEntry updated:\n\tSunday 1st December 2013\n\nEntry created:\n\tFriday 7th November 2003\n\n\n"], "registrar": ["Jisc Collections and Janet Limited"]} \ No newline at end of file diff --git a/test/target_default/direct.gov.uk b/test/target_default/direct.gov.uk new file mode 100644 index 0000000..045d5a1 --- /dev/null +++ b/test/target_default/direct.gov.uk @@ -0,0 +1 @@ +{"nameservers": ["auth50.ns.de.uu.net", "auth00.ns.de.uu.net", "ns0.ja.net", "ns2.ja.net", "ns3.ja.net", "ns4.ja.net", "ns1.surfnet.nl"], "status": ["No registration status listed."], "contacts": {"admin": null, "tech": null, "registrant": {"city": "London", "name": "UK Cabinet Office", "street": "Government Digital Service\nAviation House, 6th floor\n125 Kingsway", "country": "GB", "postalcode": "OX11 OSG"}, "billing": null}, "registrar": ["No registrar listed. This domain is directly registered with Nominet."], "raw": [" Domain name:\n gov.uk\n\n Registrant:\n UK Cabinet Office\n\n Registrant type:\n UK Government Body\n\n Registrant's address:\n Government Digital Service\n Aviation House, 6th floor\n 125 Kingsway\n London\n OX11 OSG\n GB\n\n Registrar:\n No registrar listed. This domain is directly registered with Nominet.\n\n Relevant dates:\n Registered on: before Aug-1996\n Registration status:\n No registration status listed.\n\n Name servers:\n ns0.ja.net. \n ns2.ja.net. \n ns3.ja.net. \n ns4.ja.net. \n auth50.ns.de.uu.net. \n auth00.ns.de.uu.net. \n ns1.surfnet.nl. \n\n\n WHOIS lookup made at 16:56:04 23-May-2014\n\n-- \nThis WHOIS information is provided for free by Nominet UK the central registry\nfor .uk domain names. This information and the .uk WHOIS are:\n\n Copyright Nominet UK 1996 - 2014.\n\nYou may not access the .uk WHOIS or use any data from it except as permitted\nby the terms of use available in full at http://www.nominet.org.uk/whoisterms,\nwhich includes restrictions on: (A) use of the data for advertising, or its\nrepackaging, recompilation, redistribution or reuse (B) obscuring, removing\nor hiding any or all of this notice and (C) exceeding query rate or volume\nlimits. The data is provided on an 'as-is' basis and may lag behind the\nregister. Access may be withdrawn or restricted at any time. \n\n"]} \ No newline at end of file diff --git a/test/target_default/globallatedeals.com b/test/target_default/globallatedeals.com new file mode 100644 index 0000000..21415e7 --- /dev/null +++ b/test/target_default/globallatedeals.com @@ -0,0 +1 @@ +{"updated_date": ["2014-03-14T02:52:43"], "status": ["clientDeleteProhibited", "clientTransferProhibited", "clientUpdateProhibited"], "contacts": {"admin": {"city": "Dean Clough", "handle": "LCN-816093", "name": "Paul Edwards", "phone": "+44.1274422167", "state": "West Yorkshire", "street": "Ground Floor East, Bowling Mill", "country": "GB", "postalcode": "HX3 5AX", "organization": "The Global Travel Group Limited", "email": "paul.edwards@sunmaster.co.uk"}, "tech": {"city": "Stevenage", "fax": "+44.1438300137", "handle": "AI-300624", "name": "Hostmaster", "phone": "+44.1438342490", "state": "England", "street": "Units H, J, K\nGateway 1000\nWhittle Way", "country": "GB", "postalcode": "SG1 2FP", "email": "support@lcn.com"}, "registrant": {"city": "Dean Clough", "handle": "LCN-816093", "name": "Paul Edwards", "phone": "+44.1274422167", "state": "West Yorkshire", "street": "Ground Floor East, Bowling Mill", "country": "GB", "postalcode": "HX3 5AX", "organization": "The Global Travel Group Limited", "email": "paul.edwards@sunmaster.co.uk"}, "billing": {"city": "Stevenage", "fax": "+44.1438300137", "handle": "AI-300624", "name": "Hostmaster", "phone": "+44.1438342490", "state": "England", "street": "Units H, J, K\nGateway 1000\nWhittle Way", "country": "GB", "postalcode": "SG1 2FP", "email": "support@lcn.com"}}, "nameservers": ["ns1.stellatravel.co.uk", "ns2.stellatravel.co.uk", "ns3.stellatravel.co.uk"], "expiration_date": ["2016-04-04T08:13:20"], "creation_date": ["2002-04-04T04:13:20"], "raw": ["Domain Registration Service Provided By: LCN.com\n\nThe Data in LCN.com's WHOIS database is provided by LCN.com for information\npurposes, and to assist persons in obtaining information about or related to a\ndomain name registration record. LCN.com does not guarantee its accuracy.\n\nBy submitting a WHOIS query, you agree that you will use the data obtained only\nfor lawful purposes and that, under no circumstances will you use this data to:\n\n(a) allow, enable, or otherwise support the transmission by e-mail, telephone,\nor facsimile of mass, unsolicited, commercial advertising or solicitations to\nentities other than the data recipient's own existing customers; or (b) enable\nhigh volume, automated, electronic processes that send queries or data to the\nsystems of LCN.com, except as reasonably necessary to register domain names or\nmodify existing registrations.\n\nBy submitting this query, you agree to abide by this policy.\n\nLCN.com reserves the right to modify these terms at any time.\n\n\n\ndomain: globallatedeals.com\n\nnameserver: ns1.stellatravel.co.uk \nnameserver: ns2.stellatravel.co.uk \nnameserver: ns3.stellatravel.co.uk \n\nowner-contact: LCN-816093\nadmin-contact: LCN-816093\ntechnical-contact: AI-300624\nbilling-contact: AI-300624\n\ncreated: 2002-04-04 04:13:20\nexpires: 2016-04-04 08:13:20\nchanged: 2014-03-14 02:52:43.17135\n\ncontact-handle: LCN-816093\ncontact: Paul Edwards\norganisation: The Global Travel Group Limited\naddress: Ground Floor East, Bowling Mill\naddress: Dean Clough\naddress: West Yorkshire\naddress: HX3 5AX\naddress: GB\nphone: +44.1274422167\nemail: paul.edwards@sunmaster.co.uk\n\ncontact-handle: AI-300624\ncontact: Hostmaster\naddress: Units H, J, K\naddress: Gateway 1000\naddress: Whittle Way\naddress: Stevenage\naddress: England\naddress: SG1 2FP\naddress: GB\nphone: +44.1438342490\nfax: +44.1438300137\nemail: support@lcn.com\n\n *****************************************************************************\n*******************************************************************************\n** **\n** Domain Registration Service Provided By: LCN.com **\n** ------------------------------------------------ **\n** **\n** **\n** - For award winning domain name services visit: **\n** **\n** http://www.lcn.com/domain_names **\n** **\n** - For powerful & reliable web hosting backed by a 30 day money **\n** backed guarantee visit: **\n** **\n** http://www.lcn.com/web_hosting **\n** **\n** - For support visit: **\n** **\n** http://www.lcn.com/contact_us **\n** **\n*******************************************************************************\n *****************************************************************************\n\n", "\nWhois Server Version 2.0\n\nDomain names in the .com and .net domains can now be registered\nwith many different competing registrars. Go to http://www.internic.net\nfor detailed information.\n\n Domain Name: GLOBALLATEDEALS.COM\n Registrar: LCN.COM LTD.\n Whois Server: whois.lcn.com\n Referral URL: http://www.lcn.com\n Name Server: NS1.STELLATRAVEL.CO.UK\n Name Server: NS2.STELLATRAVEL.CO.UK\n Name Server: NS3.STELLATRAVEL.CO.UK\n Status: clientDeleteProhibited\n Status: clientTransferProhibited\n Status: clientUpdateProhibited\n Updated Date: 13-mar-2014\n Creation Date: 04-apr-2002\n Expiration Date: 04-apr-2016\n\n>>> Last update of whois database: Tue, 29 Apr 2014 08:47:33 UTC <<<\n\nNOTICE: The expiration date displayed in this record is the date the \nregistrar's sponsorship of the domain name registration in the registry is \ncurrently set to expire. This date does not necessarily reflect the expiration \ndate of the domain name registrant's agreement with the sponsoring \nregistrar. Users may consult the sponsoring registrar's Whois database to \nview the registrar's reported date of expiration for this registration.\n\nTERMS OF USE: You are not authorized to access or query our Whois \ndatabase through the use of electronic processes that are high-volume and \nautomated except as reasonably necessary to register domain names or \nmodify existing registrations; the Data in VeriSign Global Registry \nServices' (\"VeriSign\") Whois database is provided by VeriSign for \ninformation purposes only, and to assist persons in obtaining information \nabout or related to a domain name registration record. VeriSign does not \nguarantee its accuracy. By submitting a Whois query, you agree to abide \nby the following terms of use: You agree that you may use this Data only \nfor lawful purposes and that under no circumstances will you use this Data \nto: (1) allow, enable, or otherwise support the transmission of mass \nunsolicited, commercial advertising or solicitations via e-mail, telephone, \nor facsimile; or (2) enable high volume, automated, electronic processes \nthat apply to VeriSign (or its computer systems). The compilation, \nrepackaging, dissemination or other use of this Data is expressly \nprohibited without the prior written consent of VeriSign. You agree not to \nuse electronic processes that are automated and high-volume to access or \nquery the Whois database except as reasonably necessary to register \ndomain names or modify existing registrations. VeriSign reserves the right \nto restrict your access to the Whois database in its sole discretion to ensure \noperational stability. VeriSign may restrict or terminate your access to the \nWhois database for failure to abide by these terms of use. VeriSign \nreserves the right to modify these terms at any time. \n\nThe Registry database contains ONLY .COM, .NET, .EDU domains and\nRegistrars.\n"], "whois_server": ["whois.lcn.com"], "registrar": ["LCN.com", "LCN.com **"]} \ No newline at end of file diff --git a/test/target_default/imperial.ac.uk b/test/target_default/imperial.ac.uk new file mode 100644 index 0000000..682f01b --- /dev/null +++ b/test/target_default/imperial.ac.uk @@ -0,0 +1 @@ +{"updated_date": ["2014-02-06T00:00:00"], "contacts": {"admin": null, "tech": null, "registrant": {"city": "Imperial College~Exhibition Road~London", "fax": "+44 20 7594 6958", "name": "Imperial College Hostmaster", "phone": "+44 20 7594 6965", "street": "ICT Division\nMechanical Engineering Building", "country": "United Kingdom", "postalcode": "SW7 2BX", "organization": "Imperial College of Science, Technology and Medicine", "email": "hostmaster@imperial.ac.uk"}, "billing": null}, "nameservers": ["ns0.ic.ac.uk", "ns1.ic.ac.uk", "ns2.ic.ac.uk", "authdns1.csx.cam.ac.uk"], "expiration_date": ["2015-04-14T00:00:00"], "creation_date": ["2003-11-07T00:00:00"], "raw": ["\nDomain:\n\timperial.ac.uk\n\nRegistered For:\n\tImperial College London\n\nDomain Owner:\n\tImperial College of Science, Technology and Medicine\n\nRegistered By:\n\tImperial College of Science, Technology and Medicine\n\nServers:\n\tns0.ic.ac.uk\t\n\tns1.ic.ac.uk\t\n\tns2.ic.ac.uk\t\n\tauthdns1.csx.cam.ac.uk\t\n\nRegistrant Contact:\n\tImperial College Hostmaster\n\nRegistrant Address:\n\tICT Division\n\tMechanical Engineering Building\n\tImperial College~Exhibition Road~London\n\tSW7 2BX\n\tUnited Kingdom\n\t+44 20 7594 6965 (Phone)\n\t+44 20 7594 6958 (FAX)\n\thostmaster@imperial.ac.uk\n\nRenewal date:\n\tTuesday 14th Apr 2015\n\nEntry updated:\n\tThursday 6th February 2014\n\nEntry created:\n\tFriday 7th November 2003\n\n\n"], "registrar": ["Imperial College of Science, Technology and Medicine"]} \ No newline at end of file diff --git a/test/target_default/nic.ps b/test/target_default/nic.ps new file mode 100644 index 0000000..edb69e4 --- /dev/null +++ b/test/target_default/nic.ps @@ -0,0 +1 @@ +{"status": ["ok"], "contacts": {"admin": {"city": "Gaza", "fax": "972-08-2861618", "handle": "24164-PS", "name": "Marwan Radwan", "phone": "972-08-2861617 ext. 059-781440", "street": "El Wehda St.- El Amal Building", "country": "PS"}, "tech": {"city": "Gaza", "fax": "972-08-2861618", "handle": "24164-PS", "name": "Marwan Radwan", "phone": "972-08-2861617 ext. 059-781440", "street": "El Wehda St.- El Amal Building", "country": "PS"}, "registrant": {"city": "GAZA", "fax": "970-8-2861618", "handle": "24124-PS", "name": "Palestinian National Internet Naming Authority", "phone": "970-8-2861617", "street": "El Wehda St.- El Amal Building - Gaza", "country": "PS"}, "billing": {"city": "Gaza", "fax": "972-08-2861618", "handle": "24164-PS", "name": "Marwan Radwan", "phone": "972-08-2861617 ext. 059-781440", "street": "El Wehda St.- El Amal Building", "country": "PS"}}, "nameservers": ["ns1.pnina.ps", "ns2.pnina.ps"], "expiration_date": ["2014-07-28T22:00:00"], "creation_date": ["2004-07-28T22:00:00"], "raw": ["Domain Name: nic.ps\nDomain ID: 24353-PS\nWHOIS Server: Palestine PS/Felasteen ccTLD Registry\nReferral URL: \nCreation Date: 2004-07-28T22:00:00.000Z\nRegistry Expiry Date: 2014-07-28T22:00:00.000Z\nSponsoring Registrar: Palestinian National Internet Naming Authority (PNINA)\nSponsoring Registrar IANA ID: \nDomain Status: ok\n\nRegistrant ID: 24124-PS\nRegistrant Name: Palestinian National Internet Naming Authority\nRegistrant Street: El Wehda St.- El Amal Building - Gaza\nRegistrant City: GAZA\nRegistrant State/Province: \nRegistrant Postal Code: \nRegistrant Country: PS\nRegistrant Phone: 970-8-2861617\nRegistrant Phone Ext: \nRegistrant Fax: 970-8-2861618\nRegistrant Fax Ext: \n\nAdmin ID: 24164-PS\nAdmin Name: Marwan Radwan\nAdmin Street: El Wehda St.- El Amal Building\nAdmin City: Gaza\nAdmin State/Province: \nAdmin Postal Code: \nAdmin Country: PS\nAdmin Phone: 972-08-2861617\nAdmin Phone Ext: 059-781440\nAdmin Fax: 972-08-2861618\nAdmin Fax Ext: \n\nBilling ID: 24164-PS\nBilling Name: Marwan Radwan\nBilling Street: El Wehda St.- El Amal Building\nBilling City: Gaza\nBilling State/Province: \nBilling Postal Code: \nBilling Country: PS\nBilling Phone: 972-08-2861617\nBilling Phone Ext: 059-781440\nBilling Fax: 972-08-2861618\nBilling Fax Ext: \n\nTech ID: 24164-PS\nTech Name: Marwan Radwan\nTech Street: El Wehda St.- El Amal Building\nTech City: Gaza\nTech State/Province: \nTech Postal Code: \nTech Country: PS\nTech Phone: 972-08-2861617\nTech Phone Ext: 059-781440\nTech Fax: 972-08-2861618\nTech Fax Ext: \n\nName Server: ns1.pnina.ps\nName Server: ns2.pnina.ps\n\nDNSSEC: unsigned\n\n\nAdditional Section\n\n\nSponsoring Registrar URL: www.pnina.ps\nSponsoring Registrar Address: 4th Floor, Al-Amal Building Al-Wehda Street Gaza\nSponsoring Registrar Phone: 970-8-2861617\nSponsoring Registrar Fax: 970-8-2861618\n\n\nTERMS OF USE: You are not authorized to access or query our Whois\ndatabase through the use of electronic processes that are high-volume and\nautomated. Whois database is provided by PNINA as a service to the internet\ncommunity on behalf of PNINA and Its Certified Registrars (CR). (http://www.pnina.ps/registrars/registrars-list/)\n\nThe data is for information purposes only. PNINA does not\nguarantee its accuracy. By submitting a Whois query, you agree to abide\nby the following terms of use: You agree that you may use this Data only\nfor lawful purposes and that under no circumstances will you use this Data\nto: (1) allow, enable, or otherwise support the transmission of mass\nunsolicited, commercial advertising or solicitations via e-mail, telephone,\nor facsimile; or (2) enable high volume, automated, electronic processes\nthat apply to PNINA and it's Certified Registrar's (or PNINA or CR computer systems). The\ncompilation, repackaging, dissemination or other use of this Data is\nexpressly prohibited.\n\n\n>>> Last update of WHOIS database: 2014-05-23T11:08:01.989Z <<<\n\n"], "whois_server": ["Palestine PS/Felasteen ccTLD Registry"], "registrar": ["Palestinian National Internet Naming Authority (PNINA)"], "id": ["24353-PS"]} \ No newline at end of file diff --git a/test/target_default/nic.ru b/test/target_default/nic.ru index 939733e..139f96d 100644 --- a/test/target_default/nic.ru +++ b/test/target_default/nic.ru @@ -1 +1 @@ -{"status": ["REGISTERED, DELEGATED, VERIFIED"], "updated_date": ["2013-11-20T08:41:39"], "contacts": {"admin": null, "tech": null, "registrant": {"organization": "JSC 'RU-CENTER'"}, "billing": null}, "nameservers": ["ns4-cloud.nic.ru", "ns4-cloud.nic.ru. 195.253.65.2, 2a01:5b0:5::2", "ns5.nic.ru", "ns5.nic.ru. 31.177.67.100, 2a02:2090:e800:9000:31:177:67:100", "ns6.nic.ru", "ns6.nic.ru. 31.177.74.100, 2a02:2090:ec00:9040:31:177:74:100", "ns7.nic.ru", "ns7.nic.ru. 31.177.71.100, 2a02:2090:ec00:9000:31:177:71:100", "ns8-cloud.nic.ru", "ns8-cloud.nic.ru. 195.253.64.10, 2a01:5b0:4::a"], "expiration_date": ["2013-12-01T00:00:00"], "creation_date": ["1997-11-28T00:00:00"], "raw": ["% By submitting a query to RIPN's Whois Service\n% you agree to abide by the following terms of use:\n% http://www.ripn.net/about/servpol.html#3.2 (in Russian) \n% http://www.ripn.net/about/en/servpol.html#3.2 (in English).\n\ndomain: NIC.RU\nnserver: ns4-cloud.nic.ru. 195.253.65.2, 2a01:5b0:5::2\nnserver: ns5.nic.ru. 31.177.67.100, 2a02:2090:e800:9000:31:177:67:100\nnserver: ns6.nic.ru. 31.177.74.100, 2a02:2090:ec00:9040:31:177:74:100\nnserver: ns7.nic.ru. 31.177.71.100, 2a02:2090:ec00:9000:31:177:71:100\nnserver: ns8-cloud.nic.ru. 195.253.64.10, 2a01:5b0:4::a\nstate: REGISTERED, DELEGATED, VERIFIED\norg: JSC 'RU-CENTER'\nregistrar: RU-CENTER-REG-RIPN\nadmin-contact: https://www.nic.ru/whois\ncreated: 1997.11.28\npaid-till: 2013.12.01\nfree-date: 2014.01.01\nsource: TCI\n\nLast updated on 2013.11.20 08:41:39 MSK\n\n"], "registrar": ["RU-CENTER-REG-RIPN"]} \ No newline at end of file +{"status": ["REGISTERED, DELEGATED, VERIFIED"], "updated_date": ["2013-11-20T08:41:39"], "contacts": {"admin": null, "tech": null, "registrant": {"organization": "JSC 'RU-CENTER'"}, "billing": null}, "nameservers": ["ns4-cloud.nic.ru", "ns5.nic.ru", "ns6.nic.ru", "ns7.nic.ru", "ns8-cloud.nic.ru"], "expiration_date": ["2013-12-01T00:00:00"], "creation_date": ["1997-11-28T00:00:00"], "raw": ["% By submitting a query to RIPN's Whois Service\n% you agree to abide by the following terms of use:\n% http://www.ripn.net/about/servpol.html#3.2 (in Russian) \n% http://www.ripn.net/about/en/servpol.html#3.2 (in English).\n\ndomain: NIC.RU\nnserver: ns4-cloud.nic.ru. 195.253.65.2, 2a01:5b0:5::2\nnserver: ns5.nic.ru. 31.177.67.100, 2a02:2090:e800:9000:31:177:67:100\nnserver: ns6.nic.ru. 31.177.74.100, 2a02:2090:ec00:9040:31:177:74:100\nnserver: ns7.nic.ru. 31.177.71.100, 2a02:2090:ec00:9000:31:177:71:100\nnserver: ns8-cloud.nic.ru. 195.253.64.10, 2a01:5b0:4::a\nstate: REGISTERED, DELEGATED, VERIFIED\norg: JSC 'RU-CENTER'\nregistrar: RU-CENTER-REG-RIPN\nadmin-contact: https://www.nic.ru/whois\ncreated: 1997.11.28\npaid-till: 2013.12.01\nfree-date: 2014.01.01\nsource: TCI\n\nLast updated on 2013.11.20 08:41:39 MSK\n\n"], "registrar": ["RU-CENTER-REG-RIPN"]} \ No newline at end of file diff --git a/test/target_default/prq.se b/test/target_default/prq.se index 6f2c835..fe7caf7 100644 --- a/test/target_default/prq.se +++ b/test/target_default/prq.se @@ -1 +1 @@ -{"status": ["active", "ok"], "updated_date": ["2012-11-03T00:00:00"], "contacts": {"admin": null, "tech": null, "registrant": {"handle": "perper9352-00001"}, "billing": null}, "nameservers": ["ns.prq.se", "ns.prq.se 193.104.214.194", "ns2.prq.se", "ns2.prq.se 88.80.30.194"], "expiration_date": ["2015-06-14T00:00:00"], "creation_date": ["2004-06-14T00:00:00"], "raw": ["# Copyright (c) 1997- .SE (The Internet Infrastructure Foundation).\n# All rights reserved.\n\n# The information obtained through searches, or otherwise, is protected\n# by the Swedish Copyright Act (1960:729) and international conventions.\n# It is also subject to database protection according to the Swedish\n# Copyright Act.\n\n# Any use of this material to target advertising or\n# similar activities is forbidden and will be prosecuted.\n# If any of the information below is transferred to a third\n# party, it must be done in its entirety. This server must\n# not be used as a backend for a search engine.\n\n# Result of search for registered domain names under\n# the .SE top level domain.\n\n# The data is in the UTF-8 character set and the result is\n# printed with eight bits.\n\nstate: active\ndomain: prq.se\nholder: perper9352-00001\nadmin-c: -\ntech-c: -\nbilling-c: -\ncreated: 2004-06-14\nmodified: 2012-11-03\nexpires: 2015-06-14\ntransferred: 2012-08-09\nnserver: ns.prq.se 193.104.214.194\nnserver: ns2.prq.se 88.80.30.194\ndnssec: unsigned delegation\nstatus: ok\nregistrar: AEB Komm\n\n"], "registrar": ["AEB Komm"]} \ No newline at end of file +{"status": ["active", "ok"], "updated_date": ["2012-11-03T00:00:00"], "contacts": {"admin": null, "tech": null, "registrant": {"handle": "perper9352-00001"}, "billing": null}, "nameservers": ["ns.prq.se", "ns2.prq.se"], "expiration_date": ["2015-06-14T00:00:00"], "creation_date": ["2004-06-14T00:00:00"], "raw": ["# Copyright (c) 1997- .SE (The Internet Infrastructure Foundation).\n# All rights reserved.\n\n# The information obtained through searches, or otherwise, is protected\n# by the Swedish Copyright Act (1960:729) and international conventions.\n# It is also subject to database protection according to the Swedish\n# Copyright Act.\n\n# Any use of this material to target advertising or\n# similar activities is forbidden and will be prosecuted.\n# If any of the information below is transferred to a third\n# party, it must be done in its entirety. This server must\n# not be used as a backend for a search engine.\n\n# Result of search for registered domain names under\n# the .SE top level domain.\n\n# The data is in the UTF-8 character set and the result is\n# printed with eight bits.\n\nstate: active\ndomain: prq.se\nholder: perper9352-00001\nadmin-c: -\ntech-c: -\nbilling-c: -\ncreated: 2004-06-14\nmodified: 2012-11-03\nexpires: 2015-06-14\ntransferred: 2012-08-09\nnserver: ns.prq.se 193.104.214.194\nnserver: ns2.prq.se 88.80.30.194\ndnssec: unsigned delegation\nstatus: ok\nregistrar: AEB Komm\n\n"], "registrar": ["AEB Komm"]} \ No newline at end of file diff --git a/test/target_default/warwick.ac.uk b/test/target_default/warwick.ac.uk new file mode 100644 index 0000000..6dfe8f7 --- /dev/null +++ b/test/target_default/warwick.ac.uk @@ -0,0 +1 @@ +{"updated_date": ["2014-02-23T00:00:00"], "contacts": {"admin": null, "tech": null, "registrant": {"city": "Coventry", "fax": "+44 24 7652 3267", "name": "Patrick Green", "phone": "+44 24 7657 4257", "street": "IT Services\nGibbet Hill Road", "country": "United Kingdom", "postalcode": "CV4 7AL", "organization": "University of Warwick", "email": "P.Green@warwick.ac.uk"}, "billing": null}, "nameservers": ["extdns1.warwick.ac.uk", "extdns2.warwick.ac.uk"], "expiration_date": ["2016-03-23T00:00:00"], "creation_date": ["2003-11-10T00:00:00"], "raw": ["\nDomain:\n\twarwick.ac.uk\n\nRegistered For:\n\tUniversity of Warwick\n\nDomain Owner:\n\tUniversity of Warwick\n\nRegistered By:\n\tJisc Collections and Janet Limited\n\nServers:\n\textdns1.warwick.ac.uk\t137.205.84.17\n\textdns2.warwick.ac.uk\t137.205.84.18\n\nRegistrant Contact:\n\tPatrick Green\n\nRegistrant Address:\n\tIT Services\n\tGibbet Hill Road\n\tCoventry\n\tCV4 7AL\n\tUnited Kingdom\n\t+44 24 7657 4257 (Phone)\n\t+44 24 7652 3267 (FAX)\n\tP.Green@warwick.ac.uk\n\nRenewal date:\n\tWednesday 23rd Mar 2016\n\nEntry updated:\n\tSunday 23rd February 2014\n\nEntry created:\n\tMonday 10th November 2003\n\n\n"], "registrar": ["Jisc Collections and Janet Limited"]} \ No newline at end of file diff --git a/test/target_normalized/blackburn.ac.uk b/test/target_normalized/blackburn.ac.uk new file mode 100644 index 0000000..46f279f --- /dev/null +++ b/test/target_normalized/blackburn.ac.uk @@ -0,0 +1 @@ +{"updated_date": ["2013-03-20T00:00:00"], "contacts": {"admin": null, "tech": null, "registrant": {"city": "Blackburn", "fax": "+44 1254 694291", "name": "Imtiyaz Patel", "phone": "+44 1254 292512", "street": "Blackburn College\nFeilden St.", "country": "United Kingdom", "postalcode": "BB2 1LH", "organization": "Blackburn College", "email": "i.patel@blackburn.ac.uk"}, "billing": null}, "nameservers": ["arrakis.blackburn.ac.uk", "ns4.ja.net"], "expiration_date": ["2014-10-20T00:00:00"], "creation_date": ["2003-11-07T00:00:00"], "raw": ["\nDomain:\n\tblackburn.ac.uk\n\nRegistered For:\n\tBlackburn College\n\nDomain Owner:\n\tBlackburn College\n\nRegistered By:\n\tJisc Collections and Janet Limited\n\nServers:\n\tarrakis.blackburn.ac.uk\t194.82.37.34\n\tns4.ja.net\t\n\nRegistrant Contact:\n\tImtiyaz Patel\n\nRegistrant Address:\n\tBlackburn College\n\tFeilden St.\n\tBlackburn\n\tBB2 1LH\n\tUnited Kingdom\n\t+44 1254 292512 (Phone)\n\t+44 1254 694291 (FAX)\n\ti.patel@blackburn.ac.uk \n\nRenewal date:\n\tMonday 20th Oct 2014\n\nEntry updated:\n\tWednesday 20th March 2013\n\nEntry created:\n\tFriday 7th November 2003\n\n\n"], "registrar": ["Jisc Collections and Janet Limited"]} \ No newline at end of file diff --git a/test/target_normalized/bristol.ac.uk b/test/target_normalized/bristol.ac.uk new file mode 100644 index 0000000..be48f63 --- /dev/null +++ b/test/target_normalized/bristol.ac.uk @@ -0,0 +1 @@ +{"updated_date": ["2013-12-01T00:00:00"], "contacts": {"admin": null, "tech": null, "registrant": {"country": "United Kingdom", "organization": "University of Bristol"}, "billing": null}, "nameservers": ["ncs.bris.ac.uk", "irix.bris.ac.uk", "ns3.ja.net"], "expiration_date": ["2016-01-01T00:00:00"], "creation_date": ["2003-11-07T00:00:00"], "raw": ["\nDomain:\n\tbristol.ac.uk\n\nRegistered For:\n\tUniversity of Bristol\n\nDomain Owner:\n\tUniversity of Bristol\n\nRegistered By:\n\tJisc Collections and Janet Limited\n\nServers:\n\tncs.bris.ac.uk\t137.222.10.36\n\tirix.bris.ac.uk\t\n\tns3.ja.net\t\n\nRegistrant Address:\n\tUnited Kingdom\n\nRenewal date:\n\tFriday 1st Jan 2016\n\nEntry updated:\n\tSunday 1st December 2013\n\nEntry created:\n\tFriday 7th November 2003\n\n\n"], "registrar": ["Jisc Collections and Janet Limited"]} \ No newline at end of file diff --git a/test/target_normalized/direct.gov.uk b/test/target_normalized/direct.gov.uk new file mode 100644 index 0000000..045d5a1 --- /dev/null +++ b/test/target_normalized/direct.gov.uk @@ -0,0 +1 @@ +{"nameservers": ["auth50.ns.de.uu.net", "auth00.ns.de.uu.net", "ns0.ja.net", "ns2.ja.net", "ns3.ja.net", "ns4.ja.net", "ns1.surfnet.nl"], "status": ["No registration status listed."], "contacts": {"admin": null, "tech": null, "registrant": {"city": "London", "name": "UK Cabinet Office", "street": "Government Digital Service\nAviation House, 6th floor\n125 Kingsway", "country": "GB", "postalcode": "OX11 OSG"}, "billing": null}, "registrar": ["No registrar listed. This domain is directly registered with Nominet."], "raw": [" Domain name:\n gov.uk\n\n Registrant:\n UK Cabinet Office\n\n Registrant type:\n UK Government Body\n\n Registrant's address:\n Government Digital Service\n Aviation House, 6th floor\n 125 Kingsway\n London\n OX11 OSG\n GB\n\n Registrar:\n No registrar listed. This domain is directly registered with Nominet.\n\n Relevant dates:\n Registered on: before Aug-1996\n Registration status:\n No registration status listed.\n\n Name servers:\n ns0.ja.net. \n ns2.ja.net. \n ns3.ja.net. \n ns4.ja.net. \n auth50.ns.de.uu.net. \n auth00.ns.de.uu.net. \n ns1.surfnet.nl. \n\n\n WHOIS lookup made at 16:56:04 23-May-2014\n\n-- \nThis WHOIS information is provided for free by Nominet UK the central registry\nfor .uk domain names. This information and the .uk WHOIS are:\n\n Copyright Nominet UK 1996 - 2014.\n\nYou may not access the .uk WHOIS or use any data from it except as permitted\nby the terms of use available in full at http://www.nominet.org.uk/whoisterms,\nwhich includes restrictions on: (A) use of the data for advertising, or its\nrepackaging, recompilation, redistribution or reuse (B) obscuring, removing\nor hiding any or all of this notice and (C) exceeding query rate or volume\nlimits. The data is provided on an 'as-is' basis and may lag behind the\nregister. Access may be withdrawn or restricted at any time. \n\n"]} \ No newline at end of file diff --git a/test/target_normalized/globallatedeals.com b/test/target_normalized/globallatedeals.com new file mode 100644 index 0000000..21415e7 --- /dev/null +++ b/test/target_normalized/globallatedeals.com @@ -0,0 +1 @@ +{"updated_date": ["2014-03-14T02:52:43"], "status": ["clientDeleteProhibited", "clientTransferProhibited", "clientUpdateProhibited"], "contacts": {"admin": {"city": "Dean Clough", "handle": "LCN-816093", "name": "Paul Edwards", "phone": "+44.1274422167", "state": "West Yorkshire", "street": "Ground Floor East, Bowling Mill", "country": "GB", "postalcode": "HX3 5AX", "organization": "The Global Travel Group Limited", "email": "paul.edwards@sunmaster.co.uk"}, "tech": {"city": "Stevenage", "fax": "+44.1438300137", "handle": "AI-300624", "name": "Hostmaster", "phone": "+44.1438342490", "state": "England", "street": "Units H, J, K\nGateway 1000\nWhittle Way", "country": "GB", "postalcode": "SG1 2FP", "email": "support@lcn.com"}, "registrant": {"city": "Dean Clough", "handle": "LCN-816093", "name": "Paul Edwards", "phone": "+44.1274422167", "state": "West Yorkshire", "street": "Ground Floor East, Bowling Mill", "country": "GB", "postalcode": "HX3 5AX", "organization": "The Global Travel Group Limited", "email": "paul.edwards@sunmaster.co.uk"}, "billing": {"city": "Stevenage", "fax": "+44.1438300137", "handle": "AI-300624", "name": "Hostmaster", "phone": "+44.1438342490", "state": "England", "street": "Units H, J, K\nGateway 1000\nWhittle Way", "country": "GB", "postalcode": "SG1 2FP", "email": "support@lcn.com"}}, "nameservers": ["ns1.stellatravel.co.uk", "ns2.stellatravel.co.uk", "ns3.stellatravel.co.uk"], "expiration_date": ["2016-04-04T08:13:20"], "creation_date": ["2002-04-04T04:13:20"], "raw": ["Domain Registration Service Provided By: LCN.com\n\nThe Data in LCN.com's WHOIS database is provided by LCN.com for information\npurposes, and to assist persons in obtaining information about or related to a\ndomain name registration record. LCN.com does not guarantee its accuracy.\n\nBy submitting a WHOIS query, you agree that you will use the data obtained only\nfor lawful purposes and that, under no circumstances will you use this data to:\n\n(a) allow, enable, or otherwise support the transmission by e-mail, telephone,\nor facsimile of mass, unsolicited, commercial advertising or solicitations to\nentities other than the data recipient's own existing customers; or (b) enable\nhigh volume, automated, electronic processes that send queries or data to the\nsystems of LCN.com, except as reasonably necessary to register domain names or\nmodify existing registrations.\n\nBy submitting this query, you agree to abide by this policy.\n\nLCN.com reserves the right to modify these terms at any time.\n\n\n\ndomain: globallatedeals.com\n\nnameserver: ns1.stellatravel.co.uk \nnameserver: ns2.stellatravel.co.uk \nnameserver: ns3.stellatravel.co.uk \n\nowner-contact: LCN-816093\nadmin-contact: LCN-816093\ntechnical-contact: AI-300624\nbilling-contact: AI-300624\n\ncreated: 2002-04-04 04:13:20\nexpires: 2016-04-04 08:13:20\nchanged: 2014-03-14 02:52:43.17135\n\ncontact-handle: LCN-816093\ncontact: Paul Edwards\norganisation: The Global Travel Group Limited\naddress: Ground Floor East, Bowling Mill\naddress: Dean Clough\naddress: West Yorkshire\naddress: HX3 5AX\naddress: GB\nphone: +44.1274422167\nemail: paul.edwards@sunmaster.co.uk\n\ncontact-handle: AI-300624\ncontact: Hostmaster\naddress: Units H, J, K\naddress: Gateway 1000\naddress: Whittle Way\naddress: Stevenage\naddress: England\naddress: SG1 2FP\naddress: GB\nphone: +44.1438342490\nfax: +44.1438300137\nemail: support@lcn.com\n\n *****************************************************************************\n*******************************************************************************\n** **\n** Domain Registration Service Provided By: LCN.com **\n** ------------------------------------------------ **\n** **\n** **\n** - For award winning domain name services visit: **\n** **\n** http://www.lcn.com/domain_names **\n** **\n** - For powerful & reliable web hosting backed by a 30 day money **\n** backed guarantee visit: **\n** **\n** http://www.lcn.com/web_hosting **\n** **\n** - For support visit: **\n** **\n** http://www.lcn.com/contact_us **\n** **\n*******************************************************************************\n *****************************************************************************\n\n", "\nWhois Server Version 2.0\n\nDomain names in the .com and .net domains can now be registered\nwith many different competing registrars. Go to http://www.internic.net\nfor detailed information.\n\n Domain Name: GLOBALLATEDEALS.COM\n Registrar: LCN.COM LTD.\n Whois Server: whois.lcn.com\n Referral URL: http://www.lcn.com\n Name Server: NS1.STELLATRAVEL.CO.UK\n Name Server: NS2.STELLATRAVEL.CO.UK\n Name Server: NS3.STELLATRAVEL.CO.UK\n Status: clientDeleteProhibited\n Status: clientTransferProhibited\n Status: clientUpdateProhibited\n Updated Date: 13-mar-2014\n Creation Date: 04-apr-2002\n Expiration Date: 04-apr-2016\n\n>>> Last update of whois database: Tue, 29 Apr 2014 08:47:33 UTC <<<\n\nNOTICE: The expiration date displayed in this record is the date the \nregistrar's sponsorship of the domain name registration in the registry is \ncurrently set to expire. This date does not necessarily reflect the expiration \ndate of the domain name registrant's agreement with the sponsoring \nregistrar. Users may consult the sponsoring registrar's Whois database to \nview the registrar's reported date of expiration for this registration.\n\nTERMS OF USE: You are not authorized to access or query our Whois \ndatabase through the use of electronic processes that are high-volume and \nautomated except as reasonably necessary to register domain names or \nmodify existing registrations; the Data in VeriSign Global Registry \nServices' (\"VeriSign\") Whois database is provided by VeriSign for \ninformation purposes only, and to assist persons in obtaining information \nabout or related to a domain name registration record. VeriSign does not \nguarantee its accuracy. By submitting a Whois query, you agree to abide \nby the following terms of use: You agree that you may use this Data only \nfor lawful purposes and that under no circumstances will you use this Data \nto: (1) allow, enable, or otherwise support the transmission of mass \nunsolicited, commercial advertising or solicitations via e-mail, telephone, \nor facsimile; or (2) enable high volume, automated, electronic processes \nthat apply to VeriSign (or its computer systems). The compilation, \nrepackaging, dissemination or other use of this Data is expressly \nprohibited without the prior written consent of VeriSign. You agree not to \nuse electronic processes that are automated and high-volume to access or \nquery the Whois database except as reasonably necessary to register \ndomain names or modify existing registrations. VeriSign reserves the right \nto restrict your access to the Whois database in its sole discretion to ensure \noperational stability. VeriSign may restrict or terminate your access to the \nWhois database for failure to abide by these terms of use. VeriSign \nreserves the right to modify these terms at any time. \n\nThe Registry database contains ONLY .COM, .NET, .EDU domains and\nRegistrars.\n"], "whois_server": ["whois.lcn.com"], "registrar": ["LCN.com", "LCN.com **"]} \ No newline at end of file diff --git a/test/target_normalized/imperial.ac.uk b/test/target_normalized/imperial.ac.uk new file mode 100644 index 0000000..682f01b --- /dev/null +++ b/test/target_normalized/imperial.ac.uk @@ -0,0 +1 @@ +{"updated_date": ["2014-02-06T00:00:00"], "contacts": {"admin": null, "tech": null, "registrant": {"city": "Imperial College~Exhibition Road~London", "fax": "+44 20 7594 6958", "name": "Imperial College Hostmaster", "phone": "+44 20 7594 6965", "street": "ICT Division\nMechanical Engineering Building", "country": "United Kingdom", "postalcode": "SW7 2BX", "organization": "Imperial College of Science, Technology and Medicine", "email": "hostmaster@imperial.ac.uk"}, "billing": null}, "nameservers": ["ns0.ic.ac.uk", "ns1.ic.ac.uk", "ns2.ic.ac.uk", "authdns1.csx.cam.ac.uk"], "expiration_date": ["2015-04-14T00:00:00"], "creation_date": ["2003-11-07T00:00:00"], "raw": ["\nDomain:\n\timperial.ac.uk\n\nRegistered For:\n\tImperial College London\n\nDomain Owner:\n\tImperial College of Science, Technology and Medicine\n\nRegistered By:\n\tImperial College of Science, Technology and Medicine\n\nServers:\n\tns0.ic.ac.uk\t\n\tns1.ic.ac.uk\t\n\tns2.ic.ac.uk\t\n\tauthdns1.csx.cam.ac.uk\t\n\nRegistrant Contact:\n\tImperial College Hostmaster\n\nRegistrant Address:\n\tICT Division\n\tMechanical Engineering Building\n\tImperial College~Exhibition Road~London\n\tSW7 2BX\n\tUnited Kingdom\n\t+44 20 7594 6965 (Phone)\n\t+44 20 7594 6958 (FAX)\n\thostmaster@imperial.ac.uk\n\nRenewal date:\n\tTuesday 14th Apr 2015\n\nEntry updated:\n\tThursday 6th February 2014\n\nEntry created:\n\tFriday 7th November 2003\n\n\n"], "registrar": ["Imperial College of Science, Technology and Medicine"]} \ No newline at end of file diff --git a/test/target_normalized/nic.ps b/test/target_normalized/nic.ps new file mode 100644 index 0000000..e253cbc --- /dev/null +++ b/test/target_normalized/nic.ps @@ -0,0 +1 @@ +{"status": ["ok"], "contacts": {"admin": {"city": "Gaza", "fax": "972-08-2861618", "handle": "24164-PS", "name": "Marwan Radwan", "phone": "972-08-2861617 ext. 059-781440", "street": "El Wehda St.- El Amal Building", "country": "PS"}, "tech": {"city": "Gaza", "fax": "972-08-2861618", "handle": "24164-PS", "name": "Marwan Radwan", "phone": "972-08-2861617 ext. 059-781440", "street": "El Wehda St.- El Amal Building", "country": "PS"}, "registrant": {"city": "Gaza", "fax": "970-8-2861618", "handle": "24124-PS", "name": "Palestinian National Internet Naming Authority", "phone": "970-8-2861617", "street": "El Wehda St.- El Amal Building - Gaza", "country": "PS"}, "billing": {"city": "Gaza", "fax": "972-08-2861618", "handle": "24164-PS", "name": "Marwan Radwan", "phone": "972-08-2861617 ext. 059-781440", "street": "El Wehda St.- El Amal Building", "country": "PS"}}, "nameservers": ["ns1.pnina.ps", "ns2.pnina.ps"], "expiration_date": ["2014-07-28T22:00:00"], "creation_date": ["2004-07-28T22:00:00"], "raw": ["Domain Name: nic.ps\nDomain ID: 24353-PS\nWHOIS Server: Palestine PS/Felasteen ccTLD Registry\nReferral URL: \nCreation Date: 2004-07-28T22:00:00.000Z\nRegistry Expiry Date: 2014-07-28T22:00:00.000Z\nSponsoring Registrar: Palestinian National Internet Naming Authority (PNINA)\nSponsoring Registrar IANA ID: \nDomain Status: ok\n\nRegistrant ID: 24124-PS\nRegistrant Name: Palestinian National Internet Naming Authority\nRegistrant Street: El Wehda St.- El Amal Building - Gaza\nRegistrant City: GAZA\nRegistrant State/Province: \nRegistrant Postal Code: \nRegistrant Country: PS\nRegistrant Phone: 970-8-2861617\nRegistrant Phone Ext: \nRegistrant Fax: 970-8-2861618\nRegistrant Fax Ext: \n\nAdmin ID: 24164-PS\nAdmin Name: Marwan Radwan\nAdmin Street: El Wehda St.- El Amal Building\nAdmin City: Gaza\nAdmin State/Province: \nAdmin Postal Code: \nAdmin Country: PS\nAdmin Phone: 972-08-2861617\nAdmin Phone Ext: 059-781440\nAdmin Fax: 972-08-2861618\nAdmin Fax Ext: \n\nBilling ID: 24164-PS\nBilling Name: Marwan Radwan\nBilling Street: El Wehda St.- El Amal Building\nBilling City: Gaza\nBilling State/Province: \nBilling Postal Code: \nBilling Country: PS\nBilling Phone: 972-08-2861617\nBilling Phone Ext: 059-781440\nBilling Fax: 972-08-2861618\nBilling Fax Ext: \n\nTech ID: 24164-PS\nTech Name: Marwan Radwan\nTech Street: El Wehda St.- El Amal Building\nTech City: Gaza\nTech State/Province: \nTech Postal Code: \nTech Country: PS\nTech Phone: 972-08-2861617\nTech Phone Ext: 059-781440\nTech Fax: 972-08-2861618\nTech Fax Ext: \n\nName Server: ns1.pnina.ps\nName Server: ns2.pnina.ps\n\nDNSSEC: unsigned\n\n\nAdditional Section\n\n\nSponsoring Registrar URL: www.pnina.ps\nSponsoring Registrar Address: 4th Floor, Al-Amal Building Al-Wehda Street Gaza\nSponsoring Registrar Phone: 970-8-2861617\nSponsoring Registrar Fax: 970-8-2861618\n\n\nTERMS OF USE: You are not authorized to access or query our Whois\ndatabase through the use of electronic processes that are high-volume and\nautomated. Whois database is provided by PNINA as a service to the internet\ncommunity on behalf of PNINA and Its Certified Registrars (CR). (http://www.pnina.ps/registrars/registrars-list/)\n\nThe data is for information purposes only. PNINA does not\nguarantee its accuracy. By submitting a Whois query, you agree to abide\nby the following terms of use: You agree that you may use this Data only\nfor lawful purposes and that under no circumstances will you use this Data\nto: (1) allow, enable, or otherwise support the transmission of mass\nunsolicited, commercial advertising or solicitations via e-mail, telephone,\nor facsimile; or (2) enable high volume, automated, electronic processes\nthat apply to PNINA and it's Certified Registrar's (or PNINA or CR computer systems). The\ncompilation, repackaging, dissemination or other use of this Data is\nexpressly prohibited.\n\n\n>>> Last update of WHOIS database: 2014-05-23T11:08:01.989Z <<<\n\n"], "whois_server": ["palestine ps/felasteen cctld registry"], "registrar": ["Palestinian National Internet Naming Authority (PNINA)"], "id": ["24353-PS"]} \ No newline at end of file diff --git a/test/target_normalized/nic.ru b/test/target_normalized/nic.ru index 512bbfe..ac14124 100644 --- a/test/target_normalized/nic.ru +++ b/test/target_normalized/nic.ru @@ -1 +1 @@ -{"status": ["Registered, Delegated, Verified"], "updated_date": ["2013-11-20T08:41:39"], "contacts": {"admin": null, "tech": null, "registrant": {"organization": "Jsc 'ru-center'"}, "billing": null}, "nameservers": ["ns4-cloud.nic.ru", "ns4-cloud.nic.ru. 195.253.65.2, 2a01:5b0:5::2", "ns5.nic.ru", "ns5.nic.ru. 31.177.67.100, 2a02:2090:e800:9000:31:177:67:100", "ns6.nic.ru", "ns6.nic.ru. 31.177.74.100, 2a02:2090:ec00:9040:31:177:74:100", "ns7.nic.ru", "ns7.nic.ru. 31.177.71.100, 2a02:2090:ec00:9000:31:177:71:100", "ns8-cloud.nic.ru", "ns8-cloud.nic.ru. 195.253.64.10, 2a01:5b0:4::a"], "expiration_date": ["2013-12-01T00:00:00"], "creation_date": ["1997-11-28T00:00:00"], "raw": ["% By submitting a query to RIPN's Whois Service\n% you agree to abide by the following terms of use:\n% http://www.ripn.net/about/servpol.html#3.2 (in Russian) \n% http://www.ripn.net/about/en/servpol.html#3.2 (in English).\n\ndomain: NIC.RU\nnserver: ns4-cloud.nic.ru. 195.253.65.2, 2a01:5b0:5::2\nnserver: ns5.nic.ru. 31.177.67.100, 2a02:2090:e800:9000:31:177:67:100\nnserver: ns6.nic.ru. 31.177.74.100, 2a02:2090:ec00:9040:31:177:74:100\nnserver: ns7.nic.ru. 31.177.71.100, 2a02:2090:ec00:9000:31:177:71:100\nnserver: ns8-cloud.nic.ru. 195.253.64.10, 2a01:5b0:4::a\nstate: REGISTERED, DELEGATED, VERIFIED\norg: JSC 'RU-CENTER'\nregistrar: RU-CENTER-REG-RIPN\nadmin-contact: https://www.nic.ru/whois\ncreated: 1997.11.28\npaid-till: 2013.12.01\nfree-date: 2014.01.01\nsource: TCI\n\nLast updated on 2013.11.20 08:41:39 MSK\n\n"], "registrar": ["Ru-center-reg-ripn"]} \ No newline at end of file +{"status": ["Registered, Delegated, Verified"], "updated_date": ["2013-11-20T08:41:39"], "contacts": {"admin": null, "tech": null, "registrant": {"organization": "Jsc 'ru-center'"}, "billing": null}, "nameservers": ["ns4-cloud.nic.ru", "ns5.nic.ru", "ns6.nic.ru", "ns7.nic.ru", "ns8-cloud.nic.ru"], "expiration_date": ["2013-12-01T00:00:00"], "creation_date": ["1997-11-28T00:00:00"], "raw": ["% By submitting a query to RIPN's Whois Service\n% you agree to abide by the following terms of use:\n% http://www.ripn.net/about/servpol.html#3.2 (in Russian) \n% http://www.ripn.net/about/en/servpol.html#3.2 (in English).\n\ndomain: NIC.RU\nnserver: ns4-cloud.nic.ru. 195.253.65.2, 2a01:5b0:5::2\nnserver: ns5.nic.ru. 31.177.67.100, 2a02:2090:e800:9000:31:177:67:100\nnserver: ns6.nic.ru. 31.177.74.100, 2a02:2090:ec00:9040:31:177:74:100\nnserver: ns7.nic.ru. 31.177.71.100, 2a02:2090:ec00:9000:31:177:71:100\nnserver: ns8-cloud.nic.ru. 195.253.64.10, 2a01:5b0:4::a\nstate: REGISTERED, DELEGATED, VERIFIED\norg: JSC 'RU-CENTER'\nregistrar: RU-CENTER-REG-RIPN\nadmin-contact: https://www.nic.ru/whois\ncreated: 1997.11.28\npaid-till: 2013.12.01\nfree-date: 2014.01.01\nsource: TCI\n\nLast updated on 2013.11.20 08:41:39 MSK\n\n"], "registrar": ["Ru-center-reg-ripn"]} \ No newline at end of file diff --git a/test/target_normalized/prq.se b/test/target_normalized/prq.se index 45c697a..8ee2bfc 100644 --- a/test/target_normalized/prq.se +++ b/test/target_normalized/prq.se @@ -1 +1 @@ -{"status": ["Active", "ok"], "updated_date": ["2012-11-03T00:00:00"], "contacts": {"admin": null, "tech": null, "registrant": {"handle": "perper9352-00001"}, "billing": null}, "nameservers": ["ns.prq.se", "ns.prq.se 193.104.214.194", "ns2.prq.se", "ns2.prq.se 88.80.30.194"], "expiration_date": ["2015-06-14T00:00:00"], "creation_date": ["2004-06-14T00:00:00"], "raw": ["# Copyright (c) 1997- .SE (The Internet Infrastructure Foundation).\n# All rights reserved.\n\n# The information obtained through searches, or otherwise, is protected\n# by the Swedish Copyright Act (1960:729) and international conventions.\n# It is also subject to database protection according to the Swedish\n# Copyright Act.\n\n# Any use of this material to target advertising or\n# similar activities is forbidden and will be prosecuted.\n# If any of the information below is transferred to a third\n# party, it must be done in its entirety. This server must\n# not be used as a backend for a search engine.\n\n# Result of search for registered domain names under\n# the .SE top level domain.\n\n# The data is in the UTF-8 character set and the result is\n# printed with eight bits.\n\nstate: active\ndomain: prq.se\nholder: perper9352-00001\nadmin-c: -\ntech-c: -\nbilling-c: -\ncreated: 2004-06-14\nmodified: 2012-11-03\nexpires: 2015-06-14\ntransferred: 2012-08-09\nnserver: ns.prq.se 193.104.214.194\nnserver: ns2.prq.se 88.80.30.194\ndnssec: unsigned delegation\nstatus: ok\nregistrar: AEB Komm\n\n"], "registrar": ["AEB Komm"]} \ No newline at end of file +{"status": ["Active", "ok"], "updated_date": ["2012-11-03T00:00:00"], "contacts": {"admin": null, "tech": null, "registrant": {"handle": "perper9352-00001"}, "billing": null}, "nameservers": ["ns.prq.se", "ns2.prq.se"], "expiration_date": ["2015-06-14T00:00:00"], "creation_date": ["2004-06-14T00:00:00"], "raw": ["# Copyright (c) 1997- .SE (The Internet Infrastructure Foundation).\n# All rights reserved.\n\n# The information obtained through searches, or otherwise, is protected\n# by the Swedish Copyright Act (1960:729) and international conventions.\n# It is also subject to database protection according to the Swedish\n# Copyright Act.\n\n# Any use of this material to target advertising or\n# similar activities is forbidden and will be prosecuted.\n# If any of the information below is transferred to a third\n# party, it must be done in its entirety. This server must\n# not be used as a backend for a search engine.\n\n# Result of search for registered domain names under\n# the .SE top level domain.\n\n# The data is in the UTF-8 character set and the result is\n# printed with eight bits.\n\nstate: active\ndomain: prq.se\nholder: perper9352-00001\nadmin-c: -\ntech-c: -\nbilling-c: -\ncreated: 2004-06-14\nmodified: 2012-11-03\nexpires: 2015-06-14\ntransferred: 2012-08-09\nnserver: ns.prq.se 193.104.214.194\nnserver: ns2.prq.se 88.80.30.194\ndnssec: unsigned delegation\nstatus: ok\nregistrar: AEB Komm\n\n"], "registrar": ["AEB Komm"]} \ No newline at end of file diff --git a/test/target_normalized/warwick.ac.uk b/test/target_normalized/warwick.ac.uk new file mode 100644 index 0000000..e41aa9f --- /dev/null +++ b/test/target_normalized/warwick.ac.uk @@ -0,0 +1 @@ +{"updated_date": ["2014-02-23T00:00:00"], "contacts": {"admin": null, "tech": null, "registrant": {"city": "Coventry", "fax": "+44 24 7652 3267", "name": "Patrick Green", "phone": "+44 24 7657 4257", "street": "IT Services\nGibbet Hill Road", "country": "United Kingdom", "postalcode": "CV4 7AL", "organization": "University of Warwick", "email": "p.green@warwick.ac.uk"}, "billing": null}, "nameservers": ["extdns1.warwick.ac.uk", "extdns2.warwick.ac.uk"], "expiration_date": ["2016-03-23T00:00:00"], "creation_date": ["2003-11-10T00:00:00"], "raw": ["\nDomain:\n\twarwick.ac.uk\n\nRegistered For:\n\tUniversity of Warwick\n\nDomain Owner:\n\tUniversity of Warwick\n\nRegistered By:\n\tJisc Collections and Janet Limited\n\nServers:\n\textdns1.warwick.ac.uk\t137.205.84.17\n\textdns2.warwick.ac.uk\t137.205.84.18\n\nRegistrant Contact:\n\tPatrick Green\n\nRegistrant Address:\n\tIT Services\n\tGibbet Hill Road\n\tCoventry\n\tCV4 7AL\n\tUnited Kingdom\n\t+44 24 7657 4257 (Phone)\n\t+44 24 7652 3267 (FAX)\n\tP.Green@warwick.ac.uk\n\nRenewal date:\n\tWednesday 23rd Mar 2016\n\nEntry updated:\n\tSunday 23rd February 2014\n\nEntry created:\n\tMonday 10th November 2003\n\n\n"], "registrar": ["Jisc Collections and Janet Limited"]} \ No newline at end of file