Skip to main content

Net::Whois - Whois parser checks domain data, determines if domain is registered or not

Whois parser overview


Data is collected via the WHOIS protocol from central servers for each domain zone. More about WHOIS can be read on Wikipedia:

A-Parser functionality allows you to save parsing settings for further use (presets), set a parsing schedule, and much more. You can use automatic query replication, substitution of subqueries from files, enumeration of alphanumeric combinations and lists to obtain the maximum possible number of results.

Saving results is possible in the form and structure that you need, thanks to the built-in powerful Template Toolkit template engine that allows you to apply additional logic to results and output data in various formats, including JSON, SQL, and CSV.

Whois parser use cases

Selecting arbitrary data

Net::Whois select arbitrary data

Domain parameters

Getting parameters by domains

Notification of domain deadlines

We receive notifications in Telegram about the expiration of domain registration

Collecting an email address database

The preset allows you to collect email addresses of domains through the Whois service.

Data collected

  • Whether the domain is registered or not
  • Date of domain registration expiration
  • When the domain was registered
  • Used whois service
  • List of domain name servers
  • Current domain status
  • Domain release date

Usage options

  • Collecting free domains or those that will soon become available
  • Collecting a list of ns-servers
  • Obtaining domain statuses


  • Supports working with international domains (IDN, for example, yandex.rf)


  • As queries, it is necessary to specify the domain of the site being searched, for example:


  • As a result, the domain is displayed, whether it is registered, the date of registration expiration, and the date of domain registration: - registered: 1, expire: 30.03.2028, creation: 29.03.1997 - registered: 1, expire: 25.02.2022, creation: 25.02.2012 - registered: 1, expire: 23.06.2021, creation: 24.06.1997 - registered: 1, expire: 01.10.2021, creation: 23.09.1997 - registered: 1, expire: 14.09.2028, creation: 15.09.1997

Output options

Output of domain expiration data in CSV

Result format:

[% tools.CSVline(query, registered, expire_date, creation_date, free_date, whoisserver, registrar) %]

Example result:,1,25.02.2022,25.02.2012,none,,"PDR Ltd. d/b/a"

Output of NS list

Result format:


Example result:

Output of NS list in CSV

Result format:

[% FOREACH ns;
tools.CSVline(query, server);
END; %]

Example result:,,

Output of result in JSON

Initial text:

[% data = {} %]

Final text:

[% data.json %]

Result format:

[%  data = {};
data.query = query;
data.registered = registered;
data.expire_date = expire_date;
data.creation_date = creation_date;
data.free_date = free_date;
data.whoisserver = whoisserver;
data.registrar = registrar; = [];
item = {};
item.server = server;;
result = {};
result = data;


Example result:

"registered": 1,
"query": "",
"free_date": "none",
"expire_date": "25.02.2022",
"registrar": "PDR Ltd. d/b/a",
"domains": [
"server": ""
"server": ""
"creation_date": "25.02.2012",
"whoisserver": ""

To make the "Initial text" and "Final text" options available in the Task Editor, you need to activate "More options".

Obtaining the domain registrar

Add the Results Constructor and select the source from the drop-down list: $ Select the type: RegEx Match. In the Regular Expression field, enter the regular expression: Registrar:\s*(.+) and save it to the registrar variable. Add to the Result Format: $query - $registrar\n

Download example

How to import the example into A-Parser


Possible settings

ParameterDefault valueDescription
Recursive query0Allows you to get an extended version of WHOIS
WHOIS server-Allows you to set your own WHOIS server