Skip to main content

Interface: CheerioRequestOptions

Defined in: src/index.ts:180

Options accepted by Cheerio.

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

Extends

Properties

baseURI?

optional baseURI: string | URL

Defined in: src/options.ts:42

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

Inherited from

DecodeStreamOptions.baseURI


encoding?

optional encoding: SnifferOptions

Defined in: src/index.ts:146

Inherited from

DecodeStreamOptions.encoding


onParseError?

optional onParseError: null | ParserErrorHandler

Defined in: node_modules/parse5/dist/parser/index.d.ts:63

Callback for parse errors.

Default

null

Inherited from

DecodeStreamOptions.onParseError


pseudos?

optional pseudos: Record<string, string | (elem, value?) => boolean>

Defined in: src/options.ts:81

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

Inherited from

DecodeStreamOptions.pseudos


quirksMode?

optional quirksMode: boolean

Defined in: src/options.ts:51

Is the document in quirks mode?

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

Default

false

Inherited from

DecodeStreamOptions.quirksMode


requestOptions?

optional requestOptions: object & Omit<RequestOptions<unknown>, "origin" | "path">

Defined in: src/index.ts:182

The options passed to undici's stream method.

Type declaration

dispatcher?

optional dispatcher: Dispatcher


scriptingEnabled?

optional scriptingEnabled: boolean

Defined in: node_modules/parse5/dist/parser/index.d.ts:40

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

Default

true

Inherited from

DecodeStreamOptions.scriptingEnabled


sourceCodeLocationInfo?

optional sourceCodeLocationInfo: boolean

Defined in: node_modules/parse5/dist/parser/index.d.ts:51

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

DecodeStreamOptions.sourceCodeLocationInfo


treeAdapter?

optional treeAdapter: TreeAdapter<Htmlparser2TreeAdapterMap>

Defined in: node_modules/parse5/dist/parser/index.d.ts:57

Specifies the resulting tree format.

Default

treeAdapters.default

Inherited from

DecodeStreamOptions.treeAdapter


xml?

optional xml: boolean | HTMLParser2Options

Defined in: src/options.ts:31

Recommended way of configuring htmlparser2 when wanting to parse XML.

This will switch Cheerio to use htmlparser2.

Default

false

Inherited from

DecodeStreamOptions.xml


xmlMode?

optional xmlMode: boolean

Defined in: src/options.ts:39

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

Deprecated

Please use the xml option instead.

Default

false

Inherited from

DecodeStreamOptions.xmlMode