oust

Extract URLs to stylesheets, scripts, links, images or HTML imports from HTML

Usage no npm install needed!

<script type="module">
  import oust from 'https://cdn.skypack.dev/oust';
</script>

README

oust Build Status dependencies Status devDependencies Status

Extract URLs to stylesheets, scripts, links, images or HTML imports from HTML

Install

npm install --save-dev oust

Usage

First include:

const oust = require('oust');

Resource links can then be extracted from either files:

Extract stylesheets references <link rel="stylesheet">

const hrefs = oust(htmlString, 'stylesheets');

Extract stylesheets references with media print <link rel="stylesheet" media="print">

const hrefs = oust(htmlString, 'stylesheets', (i, $el) => {
    return $el.attr('media') === 'print';
});

Extract script references <script src>

const srcs = oust(htmlString, 'scripts');

Extract HTML imports <link rel="import">

const hrefs = oust(htmlString, 'imports');

Extract style preload references <link rel="preload" as="style">

const hrefs = oust(htmlString, 'preload');

Extract URL references <a href>

const srcs = oust(htmlString, 'links');

Extract image source references <img src>

const srcs = oust(htmlString, 'images');

Extract inline styles <style>...</style>

const styles = oust(htmlString, 'styles');

Extract preload and stylesheet references combined

const hrefs = oust(htmlString, ['preload', 'stylesheets']);

Extract cheerio elements alongside the value

Usefull for post processing/filtering as you get an array of matched elements with cheerio convenience syntax (e.g. $el.attr())

const srcs = oust.raw(htmlString, '...');

 -> [
    {value: '...', $el: '...'},
    {value: '...', $el: '...'},
    ...
 ]

API

Options

Attribute Default Description
src not set a valid HTML string to parse for references
type not set one of stylesheets, scripts, imports, preload, styles, links, images

CLI

npm install --global oust
Extract URLs to stylesheets, scripts, links, images or HTML imports from HTML

Usage:
    $ oust <filename> <type>

Extract stylesheets references <link rel="stylesheet">

oust myFile.html stylesheets

Extract script references <script src>

oust myFile.html scripts

Extract HTML imports <link rel="import">

oust myFile.html imports

Extract URL references <a href>

oust myFile.html links

Extract image source references <img src>

oust myFile.html images

License

Released under the Apache 2 license. © Google 2014.