/oust

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

Primary LanguageJavaScriptApache License 2.0Apache-2.0

oust

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:

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

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

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.