Skip to main content

Interface: CheerioOptions

Options accepted by Cheerio.

Please note that parser-specific options are only recognized if the relevant parser is used.

Hierarchy

Properties

baseURI

Optional baseURI: string | URL

The base URI for the document. Used to resolve the href and src props.

Defined in

src/options.ts:45


onParseError

Optional onParseError: null | ParserErrorHandler

Callback for parse errors.

Default

null

Inherited from

Parse5Options.onParseError

Defined in

node_modules/parse5/dist/cjs/parser/index.d.ts:63


pseudos

Optional pseudos: Record<string, string | (elem: Element, value?: null | string) => boolean>

Extension point for pseudo-classes.

Maps from names to either strings of functions.

  • A string value is a selector that the element must match to be selected.
  • A function is called with the element as its first argument, and optional parameters second. If it returns true, the element is selected.

Example

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

Defined in

src/options.ts:84


quirksMode

Optional quirksMode: boolean

Is the document in quirks mode?

This will lead to .className and #id being case-insensitive.

Default

false

Defined in

src/options.ts:54


scriptingEnabled

Optional scriptingEnabled: boolean

The scripting flag. If set to true, noscript element content will be parsed as text.

Default

true

Inherited from

Parse5Options.scriptingEnabled

Defined in

node_modules/parse5/dist/cjs/parser/index.d.ts:40


sourceCodeLocationInfo

Optional sourceCodeLocationInfo: boolean

Enables source code location information. When enabled, each node (except the root node) will have a sourceCodeLocation property. If the node is not an empty element, sourceCodeLocation will be a ElementLocation object, otherwise it will be Location. If the element was implicitly created by the parser (as part of tree correction), its sourceCodeLocation property will be undefined.

Default

false

Inherited from

Parse5Options.sourceCodeLocationInfo

Defined in

node_modules/parse5/dist/cjs/parser/index.d.ts:51


treeAdapter

Optional treeAdapter: TreeAdapter<Htmlparser2TreeAdapterMap>

Specifies the resulting tree format.

Default

treeAdapters.default

Inherited from

Parse5Options.treeAdapter

Defined in

node_modules/parse5/dist/cjs/parser/index.d.ts:57


xml

Optional xml: boolean | HTMLParser2Options

Recommended way of configuring htmlparser2 when wanting to parse XML.

This will switch Cheerio to use htmlparser2.

Default

false

Defined in

src/options.ts:34


xmlMode

Optional xmlMode: boolean

Enable xml mode, which will switch Cheerio to use htmlparser2.

Deprecated

Please use the xml option instead.

Default

false

Defined in

src/options.ts:42