--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test/samples/expected/about.us Wed Dec 20 18:15:24 2017 +0000
@@ -0,0 +1,1 @@
+{"domain_name": "about.us", "expiration_date": "2018-04-17 23:59:59", "updated_date": "2017-06-02 01:30:53", "creation_date": "2002-04-18 15:16:22", "status": ["serverTransferProhibited https://icann.org/epp#serverTransferProhibited", "clientDeleteProhibited https://icann.org/epp#clientDeleteProhibited", "clientTransferProhibited https://icann.org/epp#clientTransferProhibited", "serverDeleteProhibited https://icann.org/epp#serverDeleteProhibited"]}
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test/samples/expected/abv.bg Wed Dec 20 18:15:24 2017 +0000
@@ -0,0 +1,1 @@
+{"domain_name": "abv.bg", "expiration_date": "see at www.register.bg", "updated_date": null, "creation_date": null, "status": "Registered"}
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test/samples/expected/allegro.pl Wed Dec 20 18:15:24 2017 +0000
@@ -0,0 +1,1 @@
+{"domain_name": "allegro.pl", "expiration_date": "2018-10-26 15:00:00", "updated_date": ["2017-10-17 07:01:25", "2017-03-27 00:00:00"], "creation_date": ["1999-10-27 13:00:00", "2014-06-02 23:44:16"], "status": null}
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test/samples/expected/davidwalsh.name Wed Dec 20 18:15:24 2017 +0000
@@ -0,0 +1,1 @@
+{"domain_name": "DAVIDWALSH.NAME", "expiration_date": null, "updated_date": null, "creation_date": null, "status": "clientTransferProhibited https://icann.org/epp#clientTransferProhibited"}
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test/samples/expected/marktplaats.nl Wed Dec 20 18:15:24 2017 +0000
@@ -0,0 +1,1 @@
+{"domain_name": "marktplaats.nl", "expiration_date": null, "updated_date": null, "creation_date": null, "status": "active"}
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test/samples/expected/nyan.cat Wed Dec 20 18:15:24 2017 +0000
@@ -0,0 +1,1 @@
+{"domain_name": "nyan.cat", "expiration_date": "2018-04-13 19:52:17.635000", "updated_date": "2017-07-07 17:24:23.746000", "creation_date": "2011-04-13 19:52:17.635000", "status": "ok https://icann.org/epp#ok"}
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test/samples/expected/sapo.pt Wed Dec 20 18:15:24 2017 +0000
@@ -0,0 +1,1 @@
+{"domain_name": "sapo.pt", "expiration_date": "2018-11-02 00:00:00", "updated_date": null, "creation_date": "2002-10-30 00:00:00", "status": "ACTIVE"}
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test/samples/expected/shazow.net Wed Dec 20 18:15:24 2017 +0000
@@ -0,0 +1,1 @@
+{"domain_name": ["SHAZOW.NET", "shazow.net"], "expiration_date": "2009-09-13 00:00:00", "updated_date": "2007-08-08 00:00:00", "creation_date": "2003-09-13 00:00:00", "status": "ok"}
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test/samples/expected/slashdot.org Wed Dec 20 18:15:24 2017 +0000
@@ -0,0 +1,1 @@
+{"domain_name": "SLASHDOT.ORG", "expiration_date": "2008-10-04 04:00:00", "updated_date": null, "creation_date": null, "status": "OK"}
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test/samples/expected/squatter.net Wed Dec 20 18:15:24 2017 +0000
@@ -0,0 +1,1 @@
+{"domain_name": "SQUATTER.NET", "expiration_date": "2008-11-06 00:00:00", "updated_date": "2007-11-07 00:00:00", "creation_date": "1999-11-06 00:00:00", "status": "clientTransferProhibited"}
\ No newline at end of file
--- a/test/samples/expected/urlowl.com Wed Dec 13 17:49:29 2017 +0000
+++ b/test/samples/expected/urlowl.com Wed Dec 20 18:15:24 2017 +0000
@@ -1,1 +1,1 @@
-{"domain_name": ["URLOWL.COM", "urlowl.com"], "expiration_date": "2009-04-14 00:00:00", "updated_date": "2008-04-14 00:00:00", "status": "ok", "creation_date": "2008-04-14 00:00:00"}
\ No newline at end of file
+{"domain_name": "URLOWL.COM", "expiration_date": "2018-02-21 19:24:57", "updated_date": "2017-03-31 07:36:34", "status": "clientTransferProhibited https://icann.org/epp#clientTransferProhibited", "creation_date": "2013-02-21 19:24:57"}
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test/samples/expected/web.de Wed Dec 20 18:15:24 2017 +0000
@@ -0,0 +1,1 @@
+{"domain_name": "web.de", "expiration_date": null, "updated_date": null, "creation_date": null, "status": "connect"}
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test/samples/expected/willhaben.at Wed Dec 20 18:15:24 2017 +0000
@@ -0,0 +1,1 @@
+{"domain_name": "willhaben.at", "expiration_date": null, "updated_date": null, "creation_date": null, "status": null}
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test/samples/expected/yandex.ru Wed Dec 20 18:15:24 2017 +0000
@@ -0,0 +1,1 @@
+{"domain_name": "YANDEX.RU", "expiration_date": "2018-09-30 21:00:00", "updated_date": null, "creation_date": "1997-09-23 09:45:07", "status": "REGISTERED, DELEGATED, VERIFIED"}
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test/samples/whois/about.us Wed Dec 20 18:15:24 2017 +0000
@@ -0,0 +1,75 @@
+Domain Name: about.us
+Registry Domain ID: D651466-US
+Registrar WHOIS Server:
+Registrar URL: www.neustarregistry.biz
+Updated Date: 2017-06-02T01:30:53Z
+Creation Date: 2002-04-18T15:16:22Z
+Registry Expiry Date: 2018-04-17T23:59:59Z
+Registrar: Neustar, Inc.
+Registrar IANA ID: 1111112
+Registrar Abuse Contact Email: reg-support@support.neustar
+Registrar Abuse Contact Phone:
+Domain Status: serverTransferProhibited https://icann.org/epp#serverTransferProhibited
+Domain Status: clientDeleteProhibited https://icann.org/epp#clientDeleteProhibited
+Domain Status: clientTransferProhibited https://icann.org/epp#clientTransferProhibited
+Domain Status: serverDeleteProhibited https://icann.org/epp#serverDeleteProhibited
+Registry Registrant ID: C37639215-US
+Registrant Name: .US Registration Policy
+Registrant Organization:
+Registrant Street: 46000 Center Oak Plaza
+Registrant Street:
+Registrant Street:
+Registrant City: Sterling
+Registrant State/Province: VA
+Registrant Postal Code: 20166
+Registrant Country: US
+Registrant Phone: +1.5714345728
+Registrant Phone Ext:
+Registrant Fax:
+Registrant Fax Ext:
+Registrant Email: support.us@neustar.us
+Registrant Application Purpose: P5
+Registrant Nexus Category: C21
+Registry Admin ID: C37639215-US
+Admin Name: .US Registration Policy
+Admin Organization:
+Admin Street: 46000 Center Oak Plaza
+Admin Street:
+Admin Street:
+Admin City: Sterling
+Admin State/Province: VA
+Admin Postal Code: 20166
+Admin Country: US
+Admin Phone: +1.5714345728
+Admin Phone Ext:
+Admin Fax:
+Admin Fax Ext:
+Admin Email: support.us@neustar.us
+Admin Application Purpose: P5
+Admin Nexus Category: C21
+Registry Tech ID: C37639215-US
+Tech Name: .US Registration Policy
+Tech Organization:
+Tech Street: 46000 Center Oak Plaza
+Tech Street:
+Tech Street:
+Tech City: Sterling
+Tech State/Province: VA
+Tech Postal Code: 20166
+Tech Country: US
+Tech Phone: +1.5714345728
+Tech Phone Ext:
+Tech Fax:
+Tech Fax Ext:
+Tech Email: support.us@neustar.us
+Tech Application Purpose: P5
+Tech Nexus Category: C21
+Name Server: ns1.usatfus.about.us
+Name Server: ns2.usatfus.about.us
+DNSSEC: unsigned
+URL of the ICANN Whois Inaccuracy Complaint Form: https://www.icann.org/wicf/
+>>> Last update of WHOIS database: 2017-12-11T22:54:29Z <<<
+
+For more information on Whois status codes, please visit https://icann.org/epp
+
+NeuStar, Inc., the Registry Administrator for .US, has collected this information for the WHOIS database through a .US-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 NeuStar registry database. NeuStar 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 laws; 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 NeuStar's prior written permission. NeuStar 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. All domain names are subject to certain additional domain name registration rules. For details, please visit our site at www.whois.us.
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test/samples/whois/abv.bg Wed Dec 20 18:15:24 2017 +0000
@@ -0,0 +1,53 @@
+
+DOMAIN NAME: abv.bg
+requested on: see at www.register.bg
+processed from: see at www.register.bg
+activated on: see at www.register.bg
+expires at: see at www.register.bg
+registration status: Registered
+
+REGISTRANT:
+Darik Net EAD
+ bul. Hristofor Kolumb 41, et. 6
+ SOFIA, 1592
+ BULGARIA
+
+ADMINISTRATIVE CONTACT:
+ Toni Enchev
+ noc@netinfo.bg
+ Darik Net EAD
+ bul. Hristofor Kolumb 41, et. 6
+ SOFIA, 1592
+ BULGARIA
+ tel: +359 2 960 3162
+ fax:
+ NIC handle: TE230426
+
+TECHNICAL CONTACT(S):
+
+ Milen Evtimov
+ milen@netinfo.bg
+ Net Info.BG JSCo
+ bul. "Cherni vrah" 1-3, Sofiya 1463
+ SOFIA, 1421
+ BULGARIA
+ tel: +359 2 9603100
+ fax: +359 2 9604179
+ NIC handle: ME26909
+
+ Biser Grigorov
+ biser@netinfo.bg
+ Net Info.BG JSCo
+ bul. "Cherni vrah" 1-3, Sofiya 1463
+ SOFIA, 1421
+ BULGARIA
+ tel: +359 2 9603100
+ fax: +359 2 9604179
+ NIC handle: BG26908
+
+NAME SERVER INFORMATION:
+ns.netinfo.bg
+ns2.netinfo.bg
+
+DNSSEC: Inactive
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test/samples/whois/allegro.pl Wed Dec 20 18:15:24 2017 +0000
@@ -0,0 +1,40 @@
+
+DOMAIN NAME: allegro.pl
+registrant type: organization
+nameservers: dns1.allegro.pl. [91.194.188.132]
+ dns2.allegro.pl. [91.207.14.244]
+ dns3.allegro.pl. [80.50.230.43]
+ dns4.allegro.pl. [213.180.138.53]
+created: 1999.10.27 13:00:00
+last modified: 2017.10.17 07:01:25
+renewal date: 2018.10.26 15:00:00
+
+option created: 2014.06.02 23:44:16
+option expiration date: 2020.06.02 23:44:16
+
+dnssec: Unsigned
+
+TECHNICAL CONTACT:
+company: DNS Administrator
+ Grupa Allegro Sp. z o.o.
+street: ul. Grunwaldzka 182
+city: 60-166 Poznan
+location: PL
+phone: +48.616271220
+fax: +48.616271220
+last modified: 2017.03.27
+
+
+REGISTRAR:
+Corporation Service Company
+251 Little Falls Drive
+Wilmington, Delaware 19808
+United States
+tel: +1.302.636.5400
+fax: +1.302.636.5454
+email: registryrelations@cscinfo.com
+
+WHOIS database responses: http://www.dns.pl/english/opiskomunikatow_en.html
+
+WHOIS displays data with a delay not exceeding 15 minutes in relation to the .pl Registry system
+Registrant data available at http://dns.pl/cgi-bin/en_whois.pl
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test/samples/whois/davidwalsh.name Wed Dec 20 18:15:24 2017 +0000
@@ -0,0 +1,35 @@
+
+Disclaimer: VeriSign, Inc. makes every effort to maintain the
+completeness and accuracy of the Whois data, but cannot guarantee
+that the results are error-free. Therefore, any data provided
+through the Whois service are on an as is basis without any
+warranties.
+BY USING THE WHOIS SERVICE AND THE DATA CONTAINED
+HEREIN OR IN ANY REPORT GENERATED WITH RESPECT THERETO, IT IS
+ACCEPTED THAT VERISIGN, INC. IS NOT LIABLE FOR
+ANY DAMAGES OF ANY KIND ARISING OUT OF, OR IN CONNECTION WITH, THE
+REPORT OR THE INFORMATION PROVIDED BY THE WHOIS SERVICE, NOR
+OMISSIONS OR MISSING INFORMATION. THE RESULTS OF ANY WHOIS REPORT OR
+INFORMATION PROVIDED BY THE WHOIS SERVICE CANNOT BE RELIED UPON IN
+CONTEMPLATION OF LEGAL PROCEEDINGS WITHOUT FURTHER VERIFICATION, NOR
+DO SUCH RESULTS CONSTITUTE A LEGAL OPINION. Acceptance of the
+results of the Whois constitutes acceptance of these terms,
+conditions and limitations. Whois data may be requested only for
+lawful purposes, in particular, to protect legal rights and
+obligations. Illegitimate uses of Whois data include, but are not
+limited to, unsolicited email, data mining, direct marketing or any
+other improper purpose. Any request made for Whois data will be
+documented by VeriSign, Inc. but will not be used for any commercial purpose whatsoever.
+
+ ****
+
+ Registry Domain ID: 2852634_DOMAIN_NAME-VRSN
+ Domain Name: DAVIDWALSH.NAME
+ Registrar: Name.com, Inc.
+ Registrar IANA ID: 625
+ Domain Status: clientTransferProhibited https://icann.org/epp#clientTransferProhibited
+
+>>> Last update of whois database: 2017-12-08T23:02:21Z <<<
+
+For more information on Whois status codes, please visit https://icann.org/epp
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test/samples/whois/marktplaats.nl Wed Dec 20 18:15:24 2017 +0000
@@ -0,0 +1,48 @@
+Domain name: marktplaats.nl
+Status: active
+
+Registrar:
+ MarkMonitor Inc.
+ 3540 East Longwing Lane
+ Suite 300
+ 83646 Meridian
+ United States of America
+
+Abuse Contact:
+
+DNSSEC: no
+
+Domain nameservers:
+ ns4.p13.dynect.net
+ ns1.p13.dynect.net
+ ns3.p13.dynect.net
+ ns2.p13.dynect.net
+
+Record maintained by: NL Domain Registry
+
+As the registrant's address is not in the Netherlands, the registrant is
+obliged by the General Terms and Conditions for .nl Registrants to use
+SIDN's registered office address as a domicile address. More information
+on the use of a domicile address may be found at
+https://www.sidn.nl/downloads/procedures/Domicile_address.pdf
+
+
+Copyright notice
+No part of this publication may be reproduced, published, stored in a
+retrieval system, or transmitted, in any form or by any means,
+electronic, mechanical, recording, or otherwise, without prior
+permission of the Foundation for Internet Domain Registration in the
+Netherlands (SIDN).
+These restrictions apply equally to registrars, except in that
+reproductions and publications are permitted insofar as they are
+reasonable, necessary and solely in the context of the registration
+activities referred to in the General Terms and Conditions for .nl
+Registrars.
+Any use of this material for advertising, targeting commercial offers or
+similar activities is explicitly forbidden and liable to result in legal
+action. Anyone who is aware or suspects that such activities are taking
+place is asked to inform the Foundation for Internet Domain Registration
+in the Netherlands.
+(c) The Foundation for Internet Domain Registration in the Netherlands
+(SIDN) Dutch Copyright Act, protection of authors' rights (Section 10,
+subsection 1, clause 1).
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test/samples/whois/nyan.cat Wed Dec 20 18:15:24 2017 +0000
@@ -0,0 +1,112 @@
+Domain Name: nyan.cat
+Registry Domain ID: 826532-D
+Registrar WHOIS Server: whois.gandi.net
+Registrar URL: https://www.gandi.net/
+Updated Date: 2017-07-07T17:24:23.746Z
+Creation Date: 2011-04-13T19:52:17.635Z
+Registry Expiry Date: 2018-04-13T19:52:17.635Z
+Registrar: GANDI SAS
+Registrar IANA ID: 81
+Registrar Abuse Contact Email: direction@gandi.net
+Registrar Abuse Contact Phone: +1.1111111
+Domain Status: ok https://icann.org/epp#ok
+Registry Registrant ID:
+Registrant Name:
+Registrant Organization:
+Registrant Street:
+Registrant City:
+Registrant State/Province:
+Registrant Postal Code:
+Registrant Country:
+Registrant Phone:
+Registrant Phone Ext:
+Registrant Fax:
+Registrant Fax Ext:
+Registrant Email:
+Registry Admin ID:
+Admin Name:
+Admin Organization:
+Admin Street:
+Admin City:
+Admin State/Province:
+Admin Postal Code:
+Admin Country:
+Admin Phone:
+Admin Phone Ext:
+Admin Fax:
+Admin Fax Ext:
+Admin Email:
+Registry Tech ID:
+Tech Name:
+Tech Organization:
+Tech Street:
+Tech City:
+Tech State/Province:
+Tech Postal Code:
+Tech Country:
+Tech Phone:
+Tech Phone Ext:
+Tech Fax:
+Tech Fax Ext:
+Tech Email:
+Registry Billing ID:
+Billing Name:
+Billing Organization:
+Billing Street:
+Billing City:
+Billing State/Province:
+Billing Postal Code:
+Billing Country:
+Billing Phone:
+Billing Phone Ext:
+Billing Fax:
+Billing Fax Ext:
+Billing Email:
+Name Server: ns1.dreamhost.com
+Name Server: ns2.dreamhost.com
+Name Server: ns3.dreamhost.com
+DNSSEC: unsigned
+IDN Tag:
+URL of the ICANN Whois Inaccuracy Complaint Form: https://www.icann.org/wicf/
+>>> Last update of Whois database: 2017-12-11T22:57:02.88Z <<<
+
+For more information on Whois status codes, please visit https://icann.org/epp
+
+
+This domain has chosen privacy settings according to the European
+data protection framework provisions.
+
+Should you need to contact the registrant, please see
+http://www.domini.cat/contact-registrant
+
+For law enforcement and trademark protection purposes, see
+http://www.domini.cat/whois-access
+
+In case of technical problems, please see
+http://www.domini.cat/report-problem
+
+Terms and Conditions of Use
+
+The data in this record is provided by puntCAT for informational
+purposes only. puntCAT does not guarantee its accuracy and cannot,
+under any circumstances, be held liable in case the stored information would
+prove to be wrong, incomplete or not accurate in any sense.
+
+All the domain data that is visible in the Whois service is protected by
+law. It is not permitted to use it for any purpose other than technical or
+administrative requirements associated with the operation of the Internet.
+It is explicitly forbidden to extract, copy and/or use or re-utilise in any
+form and by any means (electronically or not) the whole or a quantitatively
+or qualitatively substantial part of the contents of the Whois database
+without prior and explicit written permission by puntCAT It is
+prohibited, in particular, to use it for transmission of unsolicited and/or
+commercial and/or advertising by phone, fax, e-mail or for any similar
+purposes.
+
+By maintaining the connection you assure that you have a legitimate interest
+in the data and that you will only use it for the stated purposes. You are
+aware that puntCAT maintains the right to initiate legal
+proceedings against you in the event of any breach of this assurance and to
+bar you from using its Whois service.
+
+End of Whois record.
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test/samples/whois/sapo.pt Wed Dec 20 18:15:24 2017 +0000
@@ -0,0 +1,31 @@
+Nome de domínio / Domain Name: sapo.pt
+Data de registo / Creation Date (dd/mm/yyyy): 30/10/2002
+Data de expiração / Expiration Date (dd/mm/yyyy): 02/11/2018
+Estado / Status: ACTIVE
+
+Titular / Registrant
+ MEO - SERVIÇOS DE COMUNICAÇÕES E MULTIMÉDIA S.A.
+ A/C Direção de Tecnologias de Informação
+ Av. Fontes Pereira de Melo, 40
+ 1069-300 Lisboa
+ Email: gestao.dominios@telecom.pt
+
+Entidade Gestora / Billing Contact
+ MEO - SERVIÇOS DE COMUNICAÇÕES E MULTIMÉDIA S.A.
+ Email: gestao.dominios@telecom.pt
+
+Responsável Técnico / Tech Contact
+ MEO - SERVIÇOS DE COMUNICAÇÕES E MULTIMÉDIA S.A.
+ Email: gestao.dominios@telecom.pt
+
+Nameserver Information
+ Nameserver: sapo.pt NS ns2.sapo.pt.
+ Nameserver: sapo.pt NS dns02.sapo.pt.
+ Nameserver: sapo.pt NS ns.sapo.pt.
+ Nameserver: sapo.pt NS dns01.sapo.pt.
+ Nameserver: ns2.sapo.pt. A 212.55.154.194
+ Nameserver: dns02.sapo.pt. AAAA 2001:8a0:2206:4:213:13:30:116
+ Nameserver: ns.sapo.pt. A 212.55.154.202
+ Nameserver: dns01.sapo.pt. AAAA 2001:8a0:2106:4:213:13:28:116
+ Nameserver: dns01.sapo.pt. A 213.13.28.116
+ Nameserver: dns02.sapo.pt. A 213.13.30.116
\ No newline at end of file
--- a/test/samples/whois/urlowl.com Wed Dec 13 17:49:29 2017 +0000
+++ b/test/samples/whois/urlowl.com Wed Dec 20 18:15:24 2017 +0000
@@ -1,122 +1,55 @@
-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: URLOWL.COM
- Registrar: NEW DREAM NETWORK, LLC
- Whois Server: whois.dreamhost.com
- Referral URL: http://www.dreamhost.com
- Name Server: NS1.LINODE.COM
- Name Server: NS2.LINODE.COM
- Status: ok
- Updated Date: 14-apr-2008
- Creation Date: 14-apr-2008
- Expiration Date: 14-apr-2009
+ Registry Domain ID: 1781848049_DOMAIN_COM-VRSN
+ Registrar WHOIS Server: whois.dynadot.com
+ Registrar URL: http://www.dynadot.com
+ Updated Date: 2017-03-31T07:36:34Z
+ Creation Date: 2013-02-21T19:24:57Z
+ Registry Expiry Date: 2018-02-21T19:24:57Z
+ Registrar: DYNADOT, LLC
+ Registrar IANA ID: 472
+ Registrar Abuse Contact Email: abuse@dynadot.com
+ Registrar Abuse Contact Phone: +16502620100
+ Domain Status: clientTransferProhibited https://icann.org/epp#clientTransferProhibited
+ Name Server: NS1.SEDOPARKING.COM
+ Name Server: NS2.SEDOPARKING.COM
+ DNSSEC: unsigned
+ URL of the ICANN Whois Inaccuracy Complaint Form: https://www.icann.org/wicf/
+>>> Last update of whois database: 2017-12-11T23:35:30Z <<<
->>> Last update of whois database: Sun, 31 Aug 2008 00:18:23 UTC <<<
+For more information on Whois status codes, please visit https://icann.org/epp
-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
+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.
+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.
-Legal Stuff:
-
-The information in DreamHost's whois database is to be used for
-informational purposes only, and to obtain information on a
-domain name registration. DreamHost does not guarantee its
-accuracy.
-
-You are not authorized to query or access DreamHost's whois
-database using high-volume, automated means without written
-permission from DreamHost.
-
-You are not authorized to query or access DreamHost's whois
-database in order to facilitate illegal activities, or to
-facilitate the use of unsolicited bulk email, telephone, or
-facsimile communications.
-
-You are not authorized to collect, repackage, or redistribute the
-information in DreamHost's whois database.
-
-DreamHost may, at its sole discretion, restrict your access to
-the whois database at any time, with or without notice. DreamHost
-may modify these Terms of Service at any time, with or without
-notice.
-
-+++++++++++++++++++++++++++++++++++++++++++
-
- Domain Name: urlowl.com
-
- Registrant Contact:
- urlowl.com Private Registrant urlowl.com@proxy.dreamhost.com
- A Happy DreamHost Customer
- 417 Associated Rd #324
- Brea, CA 92821
- US
- +1.2139471032
-
- Administrative Contact:
- urlowl.com Private Registrant urlowl.com@proxy.dreamhost.com
- A Happy DreamHost Customer
- 417 Associated Rd #324
- Brea, CA 92821
- US
- +1.2139471032
-
- Technical Contact:
- urlowl.com Private Registrant urlowl.com@proxy.dreamhost.com
- A Happy DreamHost Customer
- 417 Associated Rd #324
- Brea, CA 92821
- US
- +1.2139471032
-
- Billing Contact:
- urlowl.com Private Registrant urlowl.com@proxy.dreamhost.com
- A Happy DreamHost Customer
- 417 Associated Rd #324
- Brea, CA 92821
- US
- +1.2139471032
-
- Record created on 2008-04-14 14:34:20.
- Record expires on 2009-04-14 14:34:20.
-
- Domain servers in listed order:
-
- ns1.linode.com
- ns2.linode.com
-
-DreamHost whois server terms of service: http://whois.dreamhost.com/terms.html
+Registrars.
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test/samples/whois/web.de Wed Dec 20 18:15:24 2017 +0000
@@ -0,0 +1,68 @@
+% Copyright (c) 2010 by DENIC
+% Version: 2.0
+%
+% Restricted rights.
+%
+% Terms and Conditions of Use
+%
+% The data in this record is provided by DENIC for informational purposes only.
+% DENIC does not guarantee its accuracy and cannot, under any circumstances,
+% be held liable in case the stored information would prove to be wrong,
+% incomplete or not accurate in any sense.
+%
+% All the domain data that is visible in the whois service is protected by law.
+% It is not permitted to use it for any purpose other than technical or
+% administrative requirements associated with the operation of the Internet.
+% It is explicitly forbidden to extract, copy and/or use or re-utilise in any
+% form and by any means (electronically or not) the whole or a quantitatively
+% or qualitatively substantial part of the contents of the whois database
+% without prior and explicit written permission by DENIC.
+% It is prohibited, in particular, to use it for transmission of unsolicited
+% and/or commercial and/or advertising by phone, fax, e-mail or for any similar
+% purposes.
+%
+% By maintaining the connection you assure that you have a legitimate interest
+% in the data and that you will only use it for the stated purposes. You are
+% aware that DENIC maintains the right to initiate legal proceedings against
+% you in the event of any breach of this assurance and to bar you from using
+% its whois service.
+%
+% The DENIC whois service on port 43 never discloses any information concerning
+% the domain holder/administrative contact. Information concerning the domain
+% holder/administrative contact can be obtained through use of our web-based
+% whois service available at the DENIC website:
+% http://www.denic.de/en/domains/whois-service/web-whois.html
+%
+
+Domain: web.de
+Nserver: ns-webde.ui-dns.biz
+Nserver: ns-webde.ui-dns.com
+Nserver: ns-webde.ui-dns.de
+Nserver: ns-webde.ui-dns.org
+Dnskey: 257 3 8 AwEAAcBs30zgmOeYcUYzJetRzRYGQXlnXpv2gO3KWf5BYRn9OqFtUBzFOqO16Ow2XPqR8SWqpAVpnToQICICZyf58SHaefGn94fTj+PlwJi4HhoCbim2U3G5sYtl5xoNfUCaDXDQFJp+HnZlaA9afHutOVFtqCmMHV+2ApSyOFFETQNmq4YoxLxiJoxSjvQAaaiJKVoA4wykjXALMyCmbXGH4aMVbW2m0Fuqe+nKU8myW14nCASBo0mDO6cBNsBwu7IiL4SxxnflDCSTkn/FnCKtzf7aVzzrRM4SqTe4NOm7wPmCZiAGoxOL15PZ7YQSt9BEXU6gMdGxCGVBdtgM13NfziM=
+Status: connect
+Changed: 2016-04-11T11:09:54+02:00
+
+[Tech-C]
+Type: PERSON
+Name: Hostmaster of the day
+Address: Elgendorfer Str. 57
+PostalCode: 56410
+City: Montabaur
+CountryCode: DE
+Phone: +49-721-9600
+Fax: +49-721-91374-215
+Email: ui-hostmaster@1and1.com
+Changed: 2011-08-10T17:09:10+02:00
+
+[Zone-C]
+Type: PERSON
+Name: Hostmaster of the day
+Address: Elgendorfer Str. 57
+PostalCode: 56410
+City: Montabaur
+CountryCode: DE
+Phone: +49-721-9600
+Fax: +49-721-91374-215
+Email: ui-hostmaster@1and1.com
+Changed: 2011-08-10T17:09:10+02:00
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test/samples/whois/willhaben.at Wed Dec 20 18:15:24 2017 +0000
@@ -0,0 +1,58 @@
+% Copyright (c)2017 by NIC.AT (1)
+%
+% Restricted rights.
+%
+% Except for agreed Internet operational purposes, no part of this
+% information may be reproduced, stored in a retrieval system, or
+% transmitted, in any form or by any means, electronic, mechanical,
+% recording, or otherwise, without prior permission of NIC.AT on behalf
+% of itself and/or the copyright holders. Any use of this material to
+% target advertising or similar activities is explicitly forbidden and
+% can be prosecuted.
+%
+% It is furthermore strictly forbidden to use the Whois-Database in such
+% a way that jeopardizes or could jeopardize the stability of the
+% technical systems of NIC.AT under any circumstances. In particular,
+% this includes any misuse of the Whois-Database and any use of the
+% Whois-Database which disturbs its operation.
+%
+% Should the user violate these points, NIC.AT reserves the right to
+% deactivate the Whois-Database entirely or partly for the user.
+% Moreover, the user shall be held liable for any and all damage
+% arising from a violation of these points.
+
+domain: willhaben.at
+registrant: WISG8002269-NICAT
+admin-c: SISG4765752-NICAT
+tech-c: SISG4765752-NICAT
+nserver: srvkkl-dns01.styria.com
+nserver: srvsgr-dns02.styria.com
+nserver: srvvie-dns03.styria.com
+changed: 20141204 14:57:44
+source: AT-DOM
+
+personname: Mirjam Techt
+organization: willhaben internet service GmbH & Co KG
+street address: Landstrasser Hauptstrasse 97-101
+postal code: 1030
+city: Wien
+country: Austria
+phone: +4312055000
+e-mail: domain@styria-it.com
+nic-hdl: WISG8002269-NICAT
+changed: 20140422 10:08:35
+source: AT-DOM
+
+personname: Uwe Holzer
+organization: Styria IT Solutions GmbH & Co KG
+street address: Gadollaplatz 1
+postal code: 8010
+city: Graz
+country: Austria
+phone: +434635800304
+fax-no: +434635800296
+e-mail: domain@styria-it.com
+nic-hdl: SISG4765752-NICAT
+changed: 20151021 16:23:11
+source: AT-DOM
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test/samples/whois/yandex.ru Wed Dec 20 18:15:24 2017 +0000
@@ -0,0 +1,20 @@
+% By submitting a query to RIPN's Whois Service
+% you agree to abide by the following terms of use:
+% http://www.ripn.net/about/servpol.html#3.2 (in Russian)
+% http://www.ripn.net/about/en/servpol.html#3.2 (in English).
+
+domain: YANDEX.RU
+nserver: ns1.yandex.ru. 213.180.193.1, 2a02:6b8::1
+nserver: ns2.yandex.ru. 93.158.134.1, 2a02:6b8:0:1::1
+nserver: ns9.z5h64q92x9.net.
+state: REGISTERED, DELEGATED, VERIFIED
+org: YANDEX, LLC.
+registrar: RU-CENTER-RU
+admin-contact: https://www.nic.ru/whois
+created: 1997-09-23T09:45:07Z
+paid-till: 2018-09-30T21:00:00Z
+free-date: 2018-11-01
+source: TCI
+
+Last updated on 2017-12-08T22:51:30Z
+
--- a/test/test_parser.py Wed Dec 13 17:49:29 2017 +0000
+++ b/test/test_parser.py Wed Dec 20 18:15:24 2017 +0000
@@ -25,15 +25,15 @@
def test_com_expiration(self):
data = """
Status: ok
- Updated Date: 14-apr-2008
- Creation Date: 14-apr-2008
- Expiration Date: 14-apr-2009
+ Updated Date: 2017-03-31T07:36:34Z
+ Creation Date: 2013-02-21T19:24:57Z
+ Registry Expiry Date: 2018-02-21T19:24:57Z
>>> Last update of whois database: Sun, 31 Aug 2008 00:18:23 UTC <<<
"""
w = WhoisEntry.load('urlowl.com', data)
expires = w.expiration_date.strftime('%Y-%m-%d')
- self.assertEqual(expires, '2009-04-14')
+ self.assertEqual(expires, '2018-02-21')
def test_cast_date(self):
dates = ['14-apr-2008', '2008-04-14']
@@ -53,7 +53,9 @@
'creation_date', 'status']
fail = 0
total = 0
- for path in glob('test/samples/whois/*.com'):
+ whois_path = os.path.join(os.path.dirname(os.path.abspath(__file__)),'samples','whois','*')
+ expect_path = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'samples','expected')
+ for path in glob(whois_path):
# Parse whois data
domain = os.path.basename(path)
with open(path) as whois_fp:
@@ -72,20 +74,22 @@
return str(obj)
raise TypeError(
'{} is not JSON serializable'.format(repr(obj)))
- outfile_name = os.path.join('test/samples/expected/', domain)
+ outfile_name = os.path.join(expect_path, domain)
with open(outfile_name, 'w') as outfil:
expected_results = json.dump(results, outfil,
default=date2str4json)
continue
# Load expected result
- with open(os.path.join('test/samples/expected/', domain)) as infil:
+ with open(os.path.join(expect_path, domain)) as infil:
expected_results = json.load(infil)
# Compare each key
for key in results:
total += 1
result = results.get(key)
+ if isinstance(result, list):
+ result = [str(element) for element in result]
if isinstance(result, datetime.datetime):
result = str(result)
expected = expected_results.get(key)
--- a/whois/parser.py Wed Dec 13 17:49:29 2017 +0000
+++ b/whois/parser.py Wed Dec 20 18:15:24 2017 +0000
@@ -326,6 +326,7 @@
'registrar': 'registrar: *(.+)',
'creation_date': 'created: *(.+)',
'expiration_date': 'paid-till: *(.+)',
+ 'updated_date': None,
'name_servers': 'nserver: *(.+)', # list of name servers
'status': 'state: *(.+)', # list of statuses
'emails': EMAIL_REGEX, # list of email addresses
@@ -343,6 +344,11 @@
"""Whois parser for .nl domains
"""
regex = {
+ 'domain_name': 'Domain Name: *(.+)',
+ 'expiration_date': None,
+ 'updated_date': None,
+ 'creation_date': None,
+ 'status': 'Status: *(.+)', # list of statuses
'name': None,
'address': None,
'zip_code': None,
@@ -366,7 +372,6 @@
self['country'] = lines[-1]
-
class WhoisName(WhoisEntry):
"""Whois parser for .name domains
"""
@@ -459,9 +464,9 @@
'name_servers': 'Name Server: *(.+)', # list of name servers
'created_by_registrar': 'Created by Registrar: *(.+)',
'last_updated_by_registrar': 'Last Updated by Registrar: *(.+)',
- 'creation_date': 'Domain Registration Date: *(.+)',
- 'expiration_date': 'Domain Expiration Date: *(.+)',
- 'updated_date': 'Domain Last Updated Date: *(.+)',
+ 'creation_date': 'Creation Date: *(.+)',
+ 'expiration_date': 'Registry Expiry Date: *(.+)',
+ 'updated_date': 'Updated Date: *(.+)',
}
def __init__(self, domain, text):
@@ -816,6 +821,8 @@
"""Whois parser for .bg domains
"""
regex = {
+ 'domain_name': 'DOMAIN NAME: *(.+)\n',
+ 'status': 'registration status: s*(.+)',
'expiration_date': 'expires at: *(.+)',
}
@@ -832,6 +839,8 @@
"""Whois parser for .de domains
"""
regex = {
+ 'domain_name': 'Domain: *(.+)',
+ 'status': 'Status: *(.+)',
'name': 'name: *(.+)',
'org': 'Organisation: *(.+)',
'address': 'Address: *(.+)',
@@ -854,6 +863,7 @@
"""Whois parser for .at domains
"""
regex = {
+ 'domain_name': 'domain: *(.+)',
'name': 'personname: *(.+)',
'org': 'organization: *(.+)',
'address': 'street address: *(.+)',
@@ -1322,7 +1332,7 @@
raise PywhoisError(text)
else:
# Merge base class regex with specifics
- self._regex.update(self.regex)
+ self._regex.copy().update(self.regex)
self.regex = self._regex
WhoisEntry.__init__(self, domain, text, self.regex)