urls-checker

Get all urls / images from a page, then check whether all the urls is working or not.

Usage no npm install needed!

<script type="module">
  import urlsChecker from 'https://cdn.skypack.dev/urls-checker';
</script>

README

URLs / Images Checker

npm version Build Status

Get all urls from a page - including images, then check whether all the urls is working or not.

Getting started

npm install urls-checker

Usage for Links

const { urlsChecker } = require('urls-checker');

urlsChecker('https://example.com', 'main-domain' - optional) // http / https is important
    .then(res => {
        console.log(res);
    })
    .catch(err => console.log(err));

The result is an object of ok, fail and error urls

{
    ok: ['list-of-working-urls'],           // status code: 200
    fail: [['url', 'status-code'], [...]],  // status code will not be 200
    error: [['url', 'message'], [...]],          // Could be certificate / authenticate error
}

Usage for Images

This method may not get all of the images because of the asynchronous loading.

const { imagesChecker } = require('urls-checker');

imagesChecker('https://example.com', , 'main-domain' - optional) // http / https is important
    .then(res => {
        console.log(res);
    })
    .catch(err => console.log(err));

The result is an object of ok, fail and error urls

{
    ok: ['list-of-working-urls'],           // status code: 200
    fail: [['url', 'status-code'], [...]],  // status code will not be 200
    error: [['url', 'message'], [...]],          // Could be certificate / authenticate error
}

Note

  • The maximum number of links that this package can check is 400.
  • The second parameter - 'main-domain' - is OPTIONAL. Because when you check a page http://example.com/bla-bla-bla, you will need a base domain to get the absolute URL of images or relative paths inside your page.

Urls Checker for the whole website

We could get all pages from sitemap.xml, then loops through all the links. You should have a sitemap.xml on your website for SEO purposes.

Contributions

This project is based on urls-checker, feel free to report bugs and make feature requests in the Issue Tracker, fork and create pull requests!