LayeredStudio / whoiser

🌍 Easy to use WHOIS info for domains, TLDs and IPs
MIT License
218 stars 32 forks source link

[Bug] Verisign's whois server returns `No match for` which can not be handled by whoiser #117

Open SukkaW opened 1 week ago

SukkaW commented 1 week ago

Version(s) affected: 1.18.0

Description

$ whois not-exist-bust.com
No match for domain "NOT-EXIST-BUST.COM".
>>> Last update of whois database: 2024-11-05T12:37:37Z <<<

How to reproduce

import * as whoiser from 'whoiser';

console.log(await whoiser.domain(domain));

It should log an empty object, but whoiser is trying to parse the not found message instead.

Possible Solution

Update this line to include No match for:

https://github.com/LayeredStudio/whoiser/blob/972467452eaae37001e7ab61224675be2576565d/src/parsers.js#L27

SukkaW commented 1 week ago

I can help submiting a PR to fix this.

SukkaW commented 1 week ago

Another example found:

$ whois bigcloud.cyou
The queried object does not exist: DOMAIN NOT FOUND

>>> Last update of WHOIS database: 2024-11-05T16:53:37.0Z <<<

For more information on Whois status codes, please visit https://icann.org/epp

>>> IMPORTANT INFORMATION ABOUT THE DEPLOYMENT OF RDAP: please visit
https://www.centralnicregistry.com/support/rdap <<<

The Whois and RDAP services are provided by CentralNic, and contain
information pertaining to Internet domain names registered by our
our customers. By using this service you are agreeing (1) not to use any
information presented here for any purpose other than determining
ownership of domain names, (2) not to store or reproduce this data in
any way, (3) not to use any high-volume, automated, electronic processes
to obtain data from this service. Abuse of this service is monitored and
actions in contravention of these terms will result in being permanently
blacklisted. All data is (c) CentralNic Ltd (https://www.centralnicregistry.com)

Access to the Whois and RDAP services is rate limited. For more
information, visit https://registrar-console.centralnicregistry.com/pub/whois_guidance.

The keyword is does not exist