oust

August 20, 2023 · View on GitHub

CI npm version

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

Install

npm install oust -D

Usage

First include:

const oust = require('oust');

Resource links can then be extracted from either files:

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

Extract script references <script src>

const srcs = oust(htmlString, 'scripts');
const hrefs = oust(htmlString, 'imports');
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

Useful 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, '...');

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

API

Options

AttributeDefaultDescription
srcnot seta valid HTML string to parse for references
typenot setone 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>
oust myFile.html stylesheets

Extract script references <script src>

oust myFile.html scripts
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.