From 76ffb7c54dcc3730b6207859e0d557e203abe0ed Mon Sep 17 00:00:00 2001 From: Sven Slootweg Date: Wed, 23 Jul 2014 01:22:33 +0200 Subject: [PATCH] Add support for Interlink Co. Ltd. (.moe and possibly others). Fixes #34. --- pythonwhois/net.py | 1 + pythonwhois/parse.py | 16 ++++---- setup.py | 2 +- test/data/get.moe | 67 ++++++++++++++++++++++++++++++++++ test/target_default/get.moe | 1 + test/target_normalized/get.moe | 1 + 6 files changed, 79 insertions(+), 9 deletions(-) create mode 100644 test/data/get.moe create mode 100644 test/target_default/get.moe create mode 100644 test/target_normalized/get.moe diff --git a/pythonwhois/net.py b/pythonwhois/net.py index 4bebccc..53f87ba 100644 --- a/pythonwhois/net.py +++ b/pythonwhois/net.py @@ -10,6 +10,7 @@ def get_whois_raw(domain, server="", previous=None, rfc3490=True, never_cut=Fals ".ac.uk": "whois.ja.net", ".ps": "whois.pnina.ps", ".buzz": "whois.nic.buzz", + ".moe": "whois.nic.moe", # The following is a bit hacky, but IANA won't return the right answer for example.com because it's a direct registration. "example.com": "whois.verisign-grs.com" } diff --git a/pythonwhois/parse.py b/pythonwhois/parse.py index 221eb26..66217d6 100644 --- a/pythonwhois/parse.py +++ b/pythonwhois/parse.py @@ -224,7 +224,7 @@ registrant_regexes = [ "\n\n(?:Owner)?\s+: (?P.*)\n(?:\s+: (?P.*)\n)?\s+: (?P.*)\n\s+: (?P.*)\n\s+: (?P.*)\n\s+: (?P.*)\n", # nic.io "Contact Information:\n\[Name\]\s*(?P.*)\n\[Email\]\s*(?P.*)\n\[Web Page\]\s*(?P.*)\n\[Postal code\]\s*(?P.*)\n\[Postal Address\]\s*(?P.*)\n(?:\s+(?P.*)\n)?(?:\s+(?P.*)\n)?\[Phone\]\s*(?P.*)\n\[Fax\]\s*(?P.*)\n", # jprs.jp "g\. \[Organization\] (?P.+)\n", # .co.jp registrations at jprs.jp - "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.*)\n(?:Registrant State/Province:(?P.*)\n)?Registrant Postal Code:(?P.*)\nRegistrant Country:(?P.*)\nRegistrant Country Code:.*\nRegistrant Phone Number:(?P.*)\n(?:Registrant Facsimile Number:(?P.*)\n)?Registrant Email:(?P.*)", # .US, .biz (NeuStar) + "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.*)\n(?:Registrant State/Province:(?P.*)\n)?(?:Registrant Postal Code:(?P.*)\n)?Registrant Country:(?P.*)\nRegistrant Country Code:.*\nRegistrant Phone Number:(?P.*)\n(?:Registrant Facsimile Number:(?P.*)\n)?Registrant Email:(?P.*)", # .US, .biz (NeuStar), .buzz, .moe (Interlink Co. Ltd.) "Registrant\n Name: (?P.+)\n(?: Organization: (?P.+)\n)? ContactID: (?P.+)\n(?: Address: (?P.+)\n(?: (?P.+)\n(?: (?P.+)\n)?)? (?P.+)\n (?P.+)\n (?P.+)\n (?P.+)\n)?(?: Created: (?P.+)\n)?(?: Last Update: (?P.+)\n)?", # nic.it " Organisation Name[.]* (?P.*)\n Organisation Address[.]* (?P.*)\n Organisation Address[.]* (?P.*)\n(?: Organisation Address[.]* (?P.*)\n)? Organisation Address[.]* (?P.*)\n Organisation Address[.]* (?P.*)\n Organisation Address[.]* (?P.*)\n Organisation Address[.]* (?P.*)", # Melbourne IT (what a horrid format...) "Registrant:[ ]*(?P.+)\n[\s\S]*Eligibility Name:[ ]*(?P.+)\n[\s\S]*Registrant Contact ID:[ ]*(?P.+)\n", # .au business @@ -247,7 +247,7 @@ registrant_regexes = [ " Registrant:\n (?P.+)\n (?P.+) (?P.+)\n (?P.*)\n (?P.*)\n (?P.*)\n (?P.+), (?P[^,\n]*)\n (?P.+)\n", # .com.tw (Western registrars) "Registrant:\n(?P.+)\n(?P.+)\n(?P.+?)(?:,+(?P.+?)(?:,+(?P.+?)(?:,+(?P.+?)(?:,+(?P.+?)(?:,+(?P.+?)(?:,+(?P.+?))?)?)?)?)?)?,(?P.+),(?P.+)\n\n Contact:\n (?P.+) (?P.+)\n TEL: (?P.+?)(?:(?:#|ext.?)(?P.+))?\n FAX: (?P.+)(?:(?:#|ext.?)(?P.+))?\n", # .com.tw (TWNIC/SEEDNET, Taiwanese companies only?) "Registrant Contact Information:\n\nCompany English Name \(It should be the same as the registered/corporation name on your Business Register Certificate or relevant documents\):(?P.+)\nCompany Chinese name:(?P.+)\nAddress: (?P.+)\nCountry: (?P.+)\nEmail: (?P.+)\n", # HKDNR (.hk) - "Registrant ID:(?P.+)\nRegistrant Name:(?P.*)\n(?:Registrant Organization:(?P.*)\n)?Registrant Street1:(?P.+?)\n(?:Registrant Street2:(?P.+?)\n(?:Registrant Street2:(?P.+?)\n)?)?Registrant City:(?P.+)\nRegistrant State:(?P.*)\nRegistrant Postal Code:(?P.+)\nRegistrant Country:(?P[A-Z]+)\nRegistrant Phone:(?P.*?)\nRegistrant Fax:(?P.*)\nRegistrant Email:(?P.+)\n", # Realtime Register + "Registrant ID:(?P.+)\nRegistrant Name:(?P.*)\n(?:Registrant Organization:(?P.*)\n)?Registrant Street1:(?P.+?)\n(?:Registrant Street2:(?P.+?)\n(?:Registrant Street3:(?P.+?)\n)?)?Registrant City:(?P.+)\nRegistrant State:(?P.*)\nRegistrant Postal Code:(?P.+)\nRegistrant Country:(?P[A-Z]+)\nRegistrant Phone:(?P.*?)\nRegistrant Fax:(?P.*)\nRegistrant Email:(?P.+)\n", # Realtime Register "owner:\s+(?P.+)", # .br "person:\s+(?P.+)", # nic.ru (person) "org:\s+(?P.+)", # nic.ru (organization) @@ -267,7 +267,7 @@ tech_contact_regexes = [ "Technical Contact:\n tech_org: (?P.*)\n tech_name: (?P.*)\n tech_email: (?P.*)\n tech_address: (?P
.*)\n tech_city: (?P.*)\n tech_state: (?P.*)\n tech_zip: (?P.*)\n tech_country: (?P.*)\n tech_phone: (?P.*)", # Bellnames "Technical contact:\n(?P[\S\s]+)\n(?P.+)\n(?P[A-Z0-9-]+)\s+(?P.+)\n(?P.+)\n\n", # nic.ch "Tech Contact ID:[ ]*(?P.+)\nTech Contact Name:[ ]*(?P.+)", # .au - "Technical Contact ID:(?P.*)\nTechnical Contact Name:(?P.*)\n(?:Technical Contact Organization:(?P.*)\n)?Technical Contact Address1:(?P.*)\n(?:Technical Contact Address2:(?P.*)\n)?(?:Technical Contact Address3:(?P.*)\n)?Technical Contact City:(?P.*)\n(?:Technical Contact State/Province:(?P.*)\n)?Technical Contact Postal Code:(?P.*)\nTechnical Contact Country:(?P.*)\nTechnical Contact Country Code:.*\nTechnical Contact Phone Number:(?P.*)\n(?:Technical Contact Facsimile Number:(?P.*)\n)?Technical Contact Email:(?P.*)", # .US, .biz (NeuStar) + "Technical Contact ID:(?P.*)\nTechnical Contact Name:(?P.*)\n(?:Technical Contact Organization:(?P.*)\n)?Technical Contact Address1:(?P.*)\n(?:Technical Contact Address2:(?P.*)\n)?(?:Technical Contact Address3:(?P.*)\n)?Technical Contact City:(?P.*)\n(?:Technical Contact State/Province:(?P.*)\n)?(?:Technical Contact Postal Code:(?P.*)\n)?Technical Contact Country:(?P.*)\nTechnical Contact Country Code:.*\nTechnical Contact Phone Number:(?P.*)\n(?:Technical Contact Facsimile Number:(?P.*)\n)?Technical Contact Email:(?P.*)", # .US, .biz (NeuStar), .buzz, .moe (Interlink Co. Ltd.) "Technical Contacts\n Name: (?P.+)\n(?: Organization: (?P.+)\n)? ContactID: (?P.+)\n(?: Address: (?P.+)\n(?: (?P.+)\n(?: (?P.+)\n)?)? (?P.+)\n (?P.+)\n (?P.+)\n (?P.+)\n)?(?: Created: (?P.+)\n)?(?: Last Update: (?P.+)\n)?", # nic.it // NOTE: Why does this say 'Contacts'? Can it have multiple? "Tech Name[.]* (?P.*)\n Tech Address[.]* (?P.*)\n Tech Address[.]* (?P.*)\n(?: Tech Address[.]* (?P.*)\n)? Tech Address[.]* (?P.*)\n Tech Address[.]* (?P.*)\n Tech Address[.]* (?P.*)\n Tech Address[.]* (?P.*)\n Tech Email[.]* (?P.*)\n Tech Phone[.]* (?P.*)\n Tech Fax[.]* (?P.*)", # Melbourne IT "Technical contact:\n(?: (?P.+)\n)? (?P.+)\n (?P.+)\n (?P.+)\n (?P.+), (?P.+) (?P.+) (?P.+)\n Phone: (?P.*)\n Fax: (?P.*)\n", # Fabulous.com @@ -285,7 +285,7 @@ tech_contact_regexes = [ "Tech Contact: (?P.+)\n(?P.+)\n(?P.+)\n(?P.+)\n(?:(?P.+)\n)?(?P.+)\n(?P.+)\n(?P[A-Z]+)\n", # .co.th, format 6 " Technical Contact:\n (?P.+) (?P.+)\n (?P.*)\n (?P.*)\n", # .com.tw (Western registrars) "Technical Contact Information:\n\n(?:Given name: (?P.+)\n)?(?:Family name: (?P.+)\n)?(?:Company name: (?P.+)\n)?Address: (?P.+)\nCountry: (?P.+)\nPhone: (?P.*)\nFax: (?P.*)\nEmail: (?P.+)\n(?:Account Name: (?P.+)\n)?", # HKDNR (.hk) - "TECH ID:(?P.+)\nTECH Name:(?P.*)\n(?:TECH Organization:(?P.*)\n)?TECH Street1:(?P.+?)\n(?:TECH Street2:(?P.+?)\n(?:TECH Street2:(?P.+?)\n)?)?TECH City:(?P.+)\nTECH State:(?P.*)\nTECH Postal Code:(?P.+)\nTECH Country:(?P[A-Z]+)\nTECH Phone:(?P.*?)\nTECH Fax:(?P.*)\nTECH Email:(?P.+)\n", # Realtime Register + "TECH ID:(?P.+)\nTECH Name:(?P.*)\n(?:TECH Organization:(?P.*)\n)?TECH Street1:(?P.+?)\n(?:TECH Street2:(?P.+?)\n(?:TECH Street3:(?P.+?)\n)?)?TECH City:(?P.+)\nTECH State:(?P.*)\nTECH Postal Code:(?P.+)\nTECH Country:(?P[A-Z]+)\nTECH Phone:(?P.*?)\nTECH Fax:(?P.*)\nTECH Email:(?P.+)\n", # Realtime Register ] admin_contact_regexes = [ @@ -300,7 +300,7 @@ admin_contact_regexes = [ " 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 "Administrative Contact:\n admin_org: (?P.*)\n admin_name: (?P.*)\n admin_email: (?P.*)\n admin_address: (?P
.*)\n admin_city: (?P.*)\n admin_state: (?P.*)\n admin_zip: (?P.*)\n admin_country: (?P.*)\n admin_phone: (?P.*)", # Bellnames - "Administrative Contact ID:(?P.*)\nAdministrative Contact Name:(?P.*)\n(?:Administrative Contact Organization:(?P.*)\n)?Administrative Contact Address1:(?P.*)\n(?:Administrative Contact Address2:(?P.*)\n)?(?:Administrative Contact Address3:(?P.*)\n)?Administrative Contact City:(?P.*)\n(?:Administrative Contact State/Province:(?P.*)\n)?Administrative Contact Postal Code:(?P.*)\nAdministrative Contact Country:(?P.*)\nAdministrative Contact Country Code:.*\nAdministrative Contact Phone Number:(?P.*)\n(?:Administrative Contact Facsimile Number:(?P.*)\n)?Administrative Contact Email:(?P.*)", # .US, .biz (NeuStar) + "Administrative Contact ID:(?P.*)\nAdministrative Contact Name:(?P.*)\n(?:Administrative Contact Organization:(?P.*)\n)?Administrative Contact Address1:(?P.*)\n(?:Administrative Contact Address2:(?P.*)\n)?(?:Administrative Contact Address3:(?P.*)\n)?Administrative Contact City:(?P.*)\n(?:Administrative Contact State/Province:(?P.*)\n)?(?:Administrative Contact Postal Code:(?P.*)\n)?Administrative Contact Country:(?P.*)\nAdministrative Contact Country Code:.*\nAdministrative Contact Phone Number:(?P.*)\n(?:Administrative Contact Facsimile Number:(?P.*)\n)?Administrative Contact Email:(?P.*)", # .US, .biz (NeuStar), .buzz, .moe (Interlink Co. Ltd.) "Admin Contact\n Name: (?P.+)\n(?: Organization: (?P.+)\n)? ContactID: (?P.+)\n(?: Address: (?P.+)\n(?: (?P.+)\n(?: (?P.+)\n)?)? (?P.+)\n (?P.+)\n (?P.+)\n (?P.+)\n)?(?: Created: (?P.+)\n)?(?: Last Update: (?P.+)\n)?", # nic.it "Admin Name[.]* (?P.*)\n Admin Address[.]* (?P.*)\n Admin Address[.]* (?P.*)\n(?: Admin Address[.]* (?P.*)\n)? Admin Address[.]* (?P.*)\n Admin Address[.]* (?P.*)\n Admin Address[.]* (?P.*)\n Admin Address[.]* (?P.*)\n Admin Email[.]* (?P.*)\n Admin Phone[.]* (?P.*)\n Admin Fax[.]* (?P.*)", # Melbourne IT "Administrative contact:\n(?: (?P.+)\n)? (?P.+)\n (?P.+)\n (?P.+)\n (?P.+), (?P.+) (?P.+) (?P.+)\n Phone: (?P.*)\n Fax: (?P.*)\n", # Fabulous.com @@ -311,7 +311,7 @@ admin_contact_regexes = [ "\[Tech-C\]\nType: (?P.+)\nName: (?P.+)\n(Organisation: (?P.+)\n){0,1}(Address: (?P.+)\n){1}(Address: (?P.+)\n){0,1}(Address: (?P.+)\n){0,1}(Address: (?P.+)\n){0,1}PostalCode: (?P.+)\nCity: (?P.+)\nCountryCode: (?P[A-Za-z]{2})\nPhone: (?P.+)\nFax: (?P.+)\nEmail: (?P.+)\n(Remarks: (?P.+)\n){0,1}Changed: (?P.+)", # DeNIC " Administrative Contact:\n (?P.+) (?P.+)\n (?P.*)\n (?P.*)\n", # .com.tw (Western registrars) "Administrative Contact Information:\n\n(?:Given name: (?P.+)\n)?(?:Family name: (?P.+)\n)?(?:Company name: (?P.+)\n)?Address: (?P.+)\nCountry: (?P.+)\nPhone: (?P.*)\nFax: (?P.*)\nEmail: (?P.+)\n(?:Account Name: (?P.+)\n)?", # HKDNR (.hk) - "ADMIN ID:(?P.+)\nADMIN Name:(?P.*)\n(?:ADMIN Organization:(?P.*)\n)?ADMIN Street1:(?P.+?)\n(?:ADMIN Street2:(?P.+?)\n(?:ADMIN Street2:(?P.+?)\n)?)?ADMIN City:(?P.+)\nADMIN State:(?P.*)\nADMIN Postal Code:(?P.+)\nADMIN Country:(?P[A-Z]+)\nADMIN Phone:(?P.*?)\nADMIN Fax:(?P.*)\nADMIN Email:(?P.+)\n", # Realtime Register + "ADMIN ID:(?P.+)\nADMIN Name:(?P.*)\n(?:ADMIN Organization:(?P.*)\n)?ADMIN Street1:(?P.+?)\n(?:ADMIN Street2:(?P.+?)\n(?:ADMIN Street3:(?P.+?)\n)?)?ADMIN City:(?P.+)\nADMIN State:(?P.*)\nADMIN Postal Code:(?P.+)\nADMIN Country:(?P[A-Z]+)\nADMIN Phone:(?P.*?)\nADMIN Fax:(?P.*)\nADMIN Email:(?P.+)\n", # Realtime Register ] billing_contact_regexes = [ @@ -324,11 +324,11 @@ billing_contact_regexes = [ " 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 "Billing Contact:\n bill_org: (?P.*)\n bill_name: (?P.*)\n bill_email: (?P.*)\n bill_address: (?P
.*)\n bill_city: (?P.*)\n bill_state: (?P.*)\n bill_zip: (?P.*)\n bill_country: (?P.*)\n bill_phone: (?P.*)", # Bellnames - "Billing Contact ID:(?P.*)\nBilling Contact Name:(?P.*)\n(?:Billing Contact Organization:(?P.*)\n)?Billing Contact Address1:(?P.*)\n(?:Billing Contact Address2:(?P.*)\n)?(?:Billing Contact Address3:(?P.*)\n)?Billing Contact City:(?P.*)\n(?:Billing Contact State/Province:(?P.*)\n)?Billing Contact Postal Code:(?P.*)\nBilling Contact Country:(?P.*)\nBilling Contact Country Code:.*\nBilling Contact Phone Number:(?P.*)\n(?:Billing Contact Facsimile Number:(?P.*)\n)?Billing Contact Email:(?P.*)", # .US, .biz (NeuStar) + "Billing Contact ID:(?P.*)\nBilling Contact Name:(?P.*)\n(?:Billing Contact Organization:(?P.*)\n)?Billing Contact Address1:(?P.*)\n(?:Billing Contact Address2:(?P.*)\n)?(?:Billing Contact Address3:(?P.*)\n)?Billing Contact City:(?P.*)\n(?:Billing Contact State/Province:(?P.*)\n)?(?:Billing Contact Postal Code:(?P.*)\n)?Billing Contact Country:(?P.*)\nBilling Contact Country Code:.*\nBilling Contact Phone Number:(?P.*)\n(?:Billing Contact Facsimile Number:(?P.*)\n)?Billing Contact Email:(?P.*)", # .US, .biz (NeuStar), .buzz, .moe (Interlink Co. Ltd.) "Billing contact:\n(?: (?P.+)\n)? (?P.+)\n (?P.+)\n (?P.+)\n (?P.+), (?P.+) (?P.+) (?P.+)\n Phone: (?P.*)\n Fax: (?P.*)\n", # Fabulous.com "Billing Contact Information :[ ]*\n[ ]+(?P.*)\n[ ]+(?P.*)\n[ ]+(?P.*)\n[ ]+(?P.*)\n[ ]+(?P.*)\n[ ]+(?P.*)\n[ ]+(?P.*)\n[ ]+(?P.*)\n[ ]+(?P.*)\n\n", # GAL Communication "Billing Contact:\n Name: (?P.+)\n City: (?P.+)\n State: (?P.+)\n Country: (?P.+)\n", # Akky (.com.mx) - "BILLING ID:(?P.+)\nBILLING Name:(?P.*)\n(?:BILLING Organization:(?P.*)\n)?BILLING Street1:(?P.+?)\n(?:BILLING Street2:(?P.+?)\n(?:BILLING Street2:(?P.+?)\n)?)?BILLING City:(?P.+)\nBILLING State:(?P.*)\nBILLING Postal Code:(?P.+)\nBILLING Country:(?P[A-Z]+)\nBILLING Phone:(?P.*?)\nBILLING Fax:(?P.*)\nBILLING Email:(?P.+)\n", # Realtime Register + "BILLING ID:(?P.+)\nBILLING Name:(?P.*)\n(?:BILLING Organization:(?P.*)\n)?BILLING Street1:(?P.+?)\n(?:BILLING Street2:(?P.+?)\n(?:BILLING Street3:(?P.+?)\n)?)?BILLING City:(?P.+)\nBILLING State:(?P.*)\nBILLING Postal Code:(?P.+)\nBILLING Country:(?P[A-Z]+)\nBILLING Phone:(?P.*?)\nBILLING Fax:(?P.*)\nBILLING Email:(?P.+)\n", # Realtime Register ] # Some registries use NIC handle references instead of directly listing contacts... diff --git a/setup.py b/setup.py index 59c69dc..7cc819a 100644 --- a/setup.py +++ b/setup.py @@ -1,7 +1,7 @@ from setuptools import setup setup(name='pythonwhois', - version='2.4.2', + version='2.4.3', 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/get.moe b/test/data/get.moe new file mode 100644 index 0000000..2fe536c --- /dev/null +++ b/test/data/get.moe @@ -0,0 +1,67 @@ +Domain Name: GET.MOE +Domain ID: D3497-MOE +Sponsoring Registrar: Interlink Co., Ltd.(moe) +Sponsoring Registrar IANA ID: 99999997 +Registrar URL (registration services): nic.moe +Domain Status: ok + +Registrant ID: MOETLD123 +Registrant Name: Interlink Co., Ltd. +Registrant Address1: 3-1-1 Higashi Ikebukuro Sunshine 60 Bldg. 37F, Toshima +Registrant City: Tokyo +Registrant Country: Japan +Registrant Country Code: JP +Registrant Phone Number: +81.339853711 +Registrant Email: gTLD@interlink.ad.jp + +Administrative Contact ID: MOETLD123 +Administrative Contact Name: Interlink Co., Ltd. +Administrative Contact Address1: 3-1-1 Higashi Ikebukuro Sunshine 60 Bldg. 37F, Toshima +Administrative Contact City: Tokyo +Administrative Contact Country: Japan +Administrative Contact Country Code: JP +Administrative Contact Phone Number: +81.339853711 +Administrative Contact Email: gTLD@interlink.ad.jp + +Billing Contact ID: MOETLD123 +Billing Contact Name: Interlink Co., Ltd. +Billing Contact Address1: 3-1-1 Higashi Ikebukuro Sunshine 60 Bldg. 37F, Toshima +Billing Contact City: Tokyo +Billing Contact Country: Japan +Billing Contact Country Code: JP +Billing Contact Phone Number: +81.339853711 +Billing Contact Email: gTLD@interlink.ad.jp + +Technical Contact ID: MOETLD123 +Technical Contact Name: Interlink Co., Ltd. +Technical Contact Address1: 3-1-1 Higashi Ikebukuro Sunshine 60 Bldg. 37F, Toshima +Technical Contact City: Tokyo +Technical Contact Country: Japan +Technical Contact Country Code: JP +Technical Contact Phone Number: +81.339853711 +Technical Contact Email: gTLD@interlink.ad.jp + +DNSSEC: unsigned +Name Server: DDNS2.INTERLINK.OR.JP +Name Server: DDNS1.INTERLINK.OR.JP + +Created by Registrar: INJECTCSR +Last Updated by Registrar: Interlink Co., Ltd.(moe) +Domain Registration Date: 2014-05-08T09:27:49Z +Domain Expiration Date: 2015-05-07T23:59:59Z +Domain Last Updated Date: 2014-06-11T07:46:02Z +Name Value Pair: Variant=GET.MOE + + + +>>>> Whois database was last updated on: 2014-07-22T23:12:29Z <<<< + + +Interlink Co., Ltd., (?Interlink?) the Registry Operator for .MOE, has collected this information for the WHOIS database through an ICANN-Accredited Registrar. This information is provided to you for informational purposes only and is designed to assist persons in determining contents of a domain name registration record in the .MOE registry database. Interlink makes this information available to you "as is" and does not guarantee its accuracy. By submitting a WHOIS query, you agree that you will use this data only for lawful purposes and that, under no circumstances will you use this data: (1) to allow, enable, or otherwise support the transmission of mass unsolicited, commercial advertising or solicitations via direct mail, electronic mail, or by telephone; (2) in contravention of any applicable data and privacy protection acts; or (3) to enable high volume, automated, electronic processes that apply to the registry (or its systems). Compilation, repackaging, dissemination, or other use of the WHOIS database in its entirety, or of a substantial portion thereof, is not allowed without Interlink?s prior written permission. + +Interlink reserves the right to modify or change these conditions at any time without prior or subsequent notification of any kind. By executing this query, in any manner whatsoever, you agree to abide by these terms. + +NOTE: FAILURE TO LOCATE A RECORD IN THE WHOIS DATABASE IS NOT INDICATIVE OF THE AVAILABILITY OF A DOMAIN NAME. + + + diff --git a/test/target_default/get.moe b/test/target_default/get.moe new file mode 100644 index 0000000..78e1fff --- /dev/null +++ b/test/target_default/get.moe @@ -0,0 +1 @@ +{"status": ["ok"], "updated_date": ["2014-06-11T07:46:02", "2014-07-22T23:12:29"], "contacts": {"admin": {"city": "Tokyo", "handle": "MOETLD123", "name": "Interlink Co., Ltd.", "phone": "+81.339853711", "street": "3-1-1 Higashi Ikebukuro Sunshine 60 Bldg. 37F, Toshima", "country": "Japan", "email": "gTLD@interlink.ad.jp"}, "tech": {"city": "Tokyo", "handle": "MOETLD123", "name": "Interlink Co., Ltd.", "phone": "+81.339853711", "street": "3-1-1 Higashi Ikebukuro Sunshine 60 Bldg. 37F, Toshima", "country": "Japan", "email": "gTLD@interlink.ad.jp"}, "registrant": {"city": "Tokyo", "handle": "MOETLD123", "name": "Interlink Co., Ltd.", "phone": "+81.339853711", "street": "3-1-1 Higashi Ikebukuro Sunshine 60 Bldg. 37F, Toshima", "country": "Japan", "email": "gTLD@interlink.ad.jp"}, "billing": {"city": "Tokyo", "handle": "MOETLD123", "name": "Interlink Co., Ltd.", "phone": "+81.339853711", "street": "3-1-1 Higashi Ikebukuro Sunshine 60 Bldg. 37F, Toshima", "country": "Japan", "email": "gTLD@interlink.ad.jp"}}, "nameservers": ["DDNS2.INTERLINK.OR.JP", "DDNS1.INTERLINK.OR.JP"], "expiration_date": ["2015-05-07T23:59:59"], "raw": ["Domain Name: GET.MOE\nDomain ID: D3497-MOE\nSponsoring Registrar: Interlink Co., Ltd.(moe)\nSponsoring Registrar IANA ID: 99999997\nRegistrar URL (registration services): nic.moe\nDomain Status: ok\n\nRegistrant ID: MOETLD123\nRegistrant Name: Interlink Co., Ltd.\nRegistrant Address1: 3-1-1 Higashi Ikebukuro Sunshine 60 Bldg. 37F, Toshima\nRegistrant City: Tokyo\nRegistrant Country: Japan\nRegistrant Country Code: JP\nRegistrant Phone Number: +81.339853711\nRegistrant Email: gTLD@interlink.ad.jp\n\nAdministrative Contact ID: MOETLD123\nAdministrative Contact Name: Interlink Co., Ltd.\nAdministrative Contact Address1: 3-1-1 Higashi Ikebukuro Sunshine 60 Bldg. 37F, Toshima\nAdministrative Contact City: Tokyo\nAdministrative Contact Country: Japan\nAdministrative Contact Country Code: JP\nAdministrative Contact Phone Number: +81.339853711\nAdministrative Contact Email: gTLD@interlink.ad.jp\n\nBilling Contact ID: MOETLD123\nBilling Contact Name: Interlink Co., Ltd.\nBilling Contact Address1: 3-1-1 Higashi Ikebukuro Sunshine 60 Bldg. 37F, Toshima\nBilling Contact City: Tokyo\nBilling Contact Country: Japan\nBilling Contact Country Code: JP\nBilling Contact Phone Number: +81.339853711\nBilling Contact Email: gTLD@interlink.ad.jp\n\nTechnical Contact ID: MOETLD123\nTechnical Contact Name: Interlink Co., Ltd.\nTechnical Contact Address1: 3-1-1 Higashi Ikebukuro Sunshine 60 Bldg. 37F, Toshima\nTechnical Contact City: Tokyo\nTechnical Contact Country: Japan\nTechnical Contact Country Code: JP\nTechnical Contact Phone Number: +81.339853711\nTechnical Contact Email: gTLD@interlink.ad.jp\n\nDNSSEC: unsigned\nName Server: DDNS2.INTERLINK.OR.JP\nName Server: DDNS1.INTERLINK.OR.JP\n\nCreated by Registrar: INJECTCSR\nLast Updated by Registrar: Interlink Co., Ltd.(moe)\nDomain Registration Date: 2014-05-08T09:27:49Z\nDomain Expiration Date: 2015-05-07T23:59:59Z\nDomain Last Updated Date: 2014-06-11T07:46:02Z\nName Value Pair: Variant=GET.MOE\n\n\n\n>>>> Whois database was last updated on: 2014-07-22T23:12:29Z <<<<\n\n\nInterlink Co., Ltd., (?Interlink?) the Registry Operator for .MOE, has collected this information for the WHOIS database through an ICANN-Accredited Registrar. This information is provided to you for informational purposes only and is designed to assist persons in determining contents of a domain name registration record in the .MOE registry database. Interlink makes this information available to you \"as is\" and does not guarantee its accuracy. By submitting a WHOIS query, you agree that you will use this data only for lawful purposes and that, under no circumstances will you use this data: (1) to allow, enable, or otherwise support the transmission of mass unsolicited, commercial advertising or solicitations via direct mail, electronic mail, or by telephone; (2) in contravention of any applicable data and privacy protection acts; or (3) to enable high volume, automated, electronic processes that apply to the registry (or its systems). Compilation, repackaging, dissemination, or other use of the WHOIS database in its entirety, or of a substantial portion thereof, is not allowed without Interlink?s prior written permission. \n\nInterlink reserves the right to modify or change these conditions at any time without prior or subsequent notification of any kind. By executing this query, in any manner whatsoever, you agree to abide by these terms.\n\nNOTE: FAILURE TO LOCATE A RECORD IN THE WHOIS DATABASE IS NOT INDICATIVE OF THE AVAILABILITY OF A DOMAIN NAME.\n\n\n\n"], "registrar": ["Interlink Co., Ltd.(moe)", "INJECTCSR"], "creation_date": ["2014-05-08T09:27:49"], "id": ["D3497-MOE"]} \ No newline at end of file diff --git a/test/target_normalized/get.moe b/test/target_normalized/get.moe new file mode 100644 index 0000000..9d88a14 --- /dev/null +++ b/test/target_normalized/get.moe @@ -0,0 +1 @@ +{"status": ["ok"], "updated_date": ["2014-06-11T07:46:02", "2014-07-22T23:12:29"], "contacts": {"admin": {"city": "Tokyo", "handle": "MOETLD123", "phone": "+81.339853711", "street": "3-1-1 Higashi Ikebukuro Sunshine 60 Bldg. 37F, Toshima", "country": "Japan", "organization": "Interlink Co., Ltd.", "email": "gtld@interlink.ad.jp"}, "tech": {"city": "Tokyo", "handle": "MOETLD123", "phone": "+81.339853711", "street": "3-1-1 Higashi Ikebukuro Sunshine 60 Bldg. 37F, Toshima", "country": "Japan", "organization": "Interlink Co., Ltd.", "email": "gtld@interlink.ad.jp"}, "registrant": {"city": "Tokyo", "handle": "MOETLD123", "phone": "+81.339853711", "street": "3-1-1 Higashi Ikebukuro Sunshine 60 Bldg. 37F, Toshima", "country": "Japan", "organization": "Interlink Co., Ltd.", "email": "gtld@interlink.ad.jp"}, "billing": {"city": "Tokyo", "handle": "MOETLD123", "phone": "+81.339853711", "street": "3-1-1 Higashi Ikebukuro Sunshine 60 Bldg. 37F, Toshima", "country": "Japan", "organization": "Interlink Co., Ltd.", "email": "gtld@interlink.ad.jp"}}, "nameservers": ["ddns2.interlink.or.jp", "ddns1.interlink.or.jp"], "expiration_date": ["2015-05-07T23:59:59"], "raw": ["Domain Name: GET.MOE\nDomain ID: D3497-MOE\nSponsoring Registrar: Interlink Co., Ltd.(moe)\nSponsoring Registrar IANA ID: 99999997\nRegistrar URL (registration services): nic.moe\nDomain Status: ok\n\nRegistrant ID: MOETLD123\nRegistrant Name: Interlink Co., Ltd.\nRegistrant Address1: 3-1-1 Higashi Ikebukuro Sunshine 60 Bldg. 37F, Toshima\nRegistrant City: Tokyo\nRegistrant Country: Japan\nRegistrant Country Code: JP\nRegistrant Phone Number: +81.339853711\nRegistrant Email: gTLD@interlink.ad.jp\n\nAdministrative Contact ID: MOETLD123\nAdministrative Contact Name: Interlink Co., Ltd.\nAdministrative Contact Address1: 3-1-1 Higashi Ikebukuro Sunshine 60 Bldg. 37F, Toshima\nAdministrative Contact City: Tokyo\nAdministrative Contact Country: Japan\nAdministrative Contact Country Code: JP\nAdministrative Contact Phone Number: +81.339853711\nAdministrative Contact Email: gTLD@interlink.ad.jp\n\nBilling Contact ID: MOETLD123\nBilling Contact Name: Interlink Co., Ltd.\nBilling Contact Address1: 3-1-1 Higashi Ikebukuro Sunshine 60 Bldg. 37F, Toshima\nBilling Contact City: Tokyo\nBilling Contact Country: Japan\nBilling Contact Country Code: JP\nBilling Contact Phone Number: +81.339853711\nBilling Contact Email: gTLD@interlink.ad.jp\n\nTechnical Contact ID: MOETLD123\nTechnical Contact Name: Interlink Co., Ltd.\nTechnical Contact Address1: 3-1-1 Higashi Ikebukuro Sunshine 60 Bldg. 37F, Toshima\nTechnical Contact City: Tokyo\nTechnical Contact Country: Japan\nTechnical Contact Country Code: JP\nTechnical Contact Phone Number: +81.339853711\nTechnical Contact Email: gTLD@interlink.ad.jp\n\nDNSSEC: unsigned\nName Server: DDNS2.INTERLINK.OR.JP\nName Server: DDNS1.INTERLINK.OR.JP\n\nCreated by Registrar: INJECTCSR\nLast Updated by Registrar: Interlink Co., Ltd.(moe)\nDomain Registration Date: 2014-05-08T09:27:49Z\nDomain Expiration Date: 2015-05-07T23:59:59Z\nDomain Last Updated Date: 2014-06-11T07:46:02Z\nName Value Pair: Variant=GET.MOE\n\n\n\n>>>> Whois database was last updated on: 2014-07-22T23:12:29Z <<<<\n\n\nInterlink Co., Ltd., (?Interlink?) the Registry Operator for .MOE, has collected this information for the WHOIS database through an ICANN-Accredited Registrar. This information is provided to you for informational purposes only and is designed to assist persons in determining contents of a domain name registration record in the .MOE registry database. Interlink makes this information available to you \"as is\" and does not guarantee its accuracy. By submitting a WHOIS query, you agree that you will use this data only for lawful purposes and that, under no circumstances will you use this data: (1) to allow, enable, or otherwise support the transmission of mass unsolicited, commercial advertising or solicitations via direct mail, electronic mail, or by telephone; (2) in contravention of any applicable data and privacy protection acts; or (3) to enable high volume, automated, electronic processes that apply to the registry (or its systems). Compilation, repackaging, dissemination, or other use of the WHOIS database in its entirety, or of a substantial portion thereof, is not allowed without Interlink?s prior written permission. \n\nInterlink reserves the right to modify or change these conditions at any time without prior or subsequent notification of any kind. By executing this query, in any manner whatsoever, you agree to abide by these terms.\n\nNOTE: FAILURE TO LOCATE A RECORD IN THE WHOIS DATABASE IS NOT INDICATIVE OF THE AVAILABILITY OF A DOMAIN NAME.\n\n\n\n"], "registrar": ["Interlink Co., Ltd.(moe)", "Injectcsr"], "creation_date": ["2014-05-08T09:27:49"], "id": ["D3497-MOE"]} \ No newline at end of file