Skip to content

Domain parser that automatically updates its suffix lists from Mozilla's publicsuffix.org

Notifications You must be signed in to change notification settings

mugendi/parse-domains-2

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Parse Domains

NPM

The MIT License github-package.json-version github-top-lang

This module is a complete rewrite of parse-domains version 1.x.x in order to make use of Mozilla's fantastic publicsuffix list.

It was written while benchmarking against tldts which is super fast but has to be updated with every new suffix added to the public suffix list.

Instead, this module automatically downloads the public list once a day only as recommended by publicsuffix.org. The new list is then loaded to memory once to keep the library super fast.

Generally, parsing most domains takes less than one millisecond. While not as fast as tldts, it parses in 1ms or less and you will never have to upgrade the module to a higher version just to get the latest suffixes.

Usage

async () => {
	let parse = require('parse-domains');
  // notice this method returns a promise
  // So either use the async/await pattern or the Promise.then pattern
	let resp = await parse('http://www.google.co.uk');
	console.log(resp);
};

This will log:

{
  tld: 'co.uk',
  domain: 'google.co.uk',
  subdomain: 'www',
  siteName: 'google',
  href: 'http://www.google.co.uk/',
  hostname: 'www.google.co.uk',
  protocol: 'http:'
}

About

Domain parser that automatically updates its suffix lists from Mozilla's publicsuffix.org

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published