Optional
TokenizerAllows the default tokenizer to be overwritten.
Optional
baseURIThe base URI for the document. Used for the href
and src
props.
Optional
decodeDecode entities within the document.
true
Optional
lowerIf set to true
, all attribute names will be lowercased. This has noticeable impact on speed.
!xmlMode
Optional
lowerIf set to true, all tags will be lowercased.
!xmlMode
Optional
pseudosExtension point for pseudo-classes.
Maps from names to either strings of functions.
const $ = cheerio.load(
'<div class="foo"></div><div data-bar="boo"></div>',
{
pseudos: {
// `:foo` is an alias for `div.foo`
foo: 'div.foo',
// `:bar(val)` is equivalent to `[data-bar=val s]`
bar: (el, val) => el.attribs['data-bar'] === val,
},
}
);
$(':foo').length; // 1
$('div:bar(boo)').length; // 1
$('div:bar(baz)').length; // 0
Optional
quirksIs the document in quirks mode?
This will lead to .className
and #id
being case-insensitive.
false
Optional
recognizeCDATAIf set to true, CDATA sections will be recognized as text even if the xmlMode option is not enabled.
NOTE: If xmlMode is set to true
then CDATA sections will always be recognized as text.
xmlMode
Optional
recognizeIf set to true
, self-closing tags will trigger the onclosetag event even if xmlMode is not set to true
.
NOTE: If xmlMode is set to true
then self-closing tags will always be recognized.
xmlMode
Optional
scriptingDisable scripting in parse5, so noscript tags would be parsed.
Optional
sourceEnable location support for parse5.
Optional
withAdd 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.
false
Optional
withAdd 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.
false
Optional
xmlRecommended way of configuring htmlparser2 when wanting to parse XML.
Optional
xmlTreat the markup as XML.
false
Options accepted by Cheerio.
Please note that parser-specific options are only recognized if the relevant parser is used.