Skip to content

Repository files navigation

domhandler Node.js CI

The DOM handler creates a tree containing all nodes of a page. The tree can be manipulated using the domutils or cheerio libraries and rendered using dom-serializer .

Usage

consthandler=newDomHandler([<func> callback(err, dom), ] [ <obj> options ]);
// const parser = new Parser(handler[, options]);

Available options are described below.

Example

const{ Parser }=require("htmlparser2");const{ DomHandler }=require("domhandler");constrawHtml="Xyz <script language= javascript>var foo = '<<bar>>';</script><!--<!-- Waah! -- -->";consthandler=newDomHandler((error,dom)=>{if(error){// Handle error}else{// Parsing completed, do somethingconsole.log(dom);}});constparser=newParser(handler);parser.write(rawHtml);parser.end();

Output:

[{data: "Xyz ",type: "text",},{type: "script",name: "script",attribs: {language: "javascript",},children: [{data: "var foo = '<bar>';<",type: "text",},],},{data: "<!-- Waah! -- ",type: "comment",},];

Option: withStartIndices

Add a startIndex property to nodes. When the parser is used in a non-streaming fashion, startIndex is an integer indicating the position of the start of the node in the document. The default value is false.

Option: withEndIndices

Add an endIndex property to nodes. When the parser is used in a non-streaming fashion, endIndex is an integer indicating the position of the end of the node in the document. The default value is false.


License: BSD-2-Clause

Security contact information

To report a security vulnerability, please use the Tidelift security contact. Tidelift will coordinate the fix and disclosure.

About

Handler for htmlparser2, to get a DOM

Topics

Resources

Stars

365 stars

Watchers

4 watching

Forks

Releases

Sponsor this project

Used by

Contributors

Languages