htmlparser2-parse5-tree-adapter
milahu opened this issue · 1 comments
milahu commented
im looking for the inverse of parse5-htmlparser2-tree-adapter
aka
htmlparser2-parse5-tree-adapter
htmlparser2-to-parse5-tree-adapter
does it exist?
if no, contributions welcome?
why
add htmlparser2 to a project that is currently using only parse5
so the internals are based on parse5
cheerio
projects like cheerio use both parsers, parse5 for html, htmlparser2 for xhtml
cheerio internals are based on htmlparser2, so parse5 is used via adapter
import { parseDocument as parseWithHtmlparser2 } from 'htmlparser2';
import { renderWithParse5, parseWithParse5 } from './parsers/parse5-adapter.js';
const parse = getParse((content, options, isDocument, context) =>
options.xmlMode || options._useHtmlParser2
? parseWithHtmlparser2(content, options)
: parseWithParse5(content, options, isDocument, context)
);
export const load = getLoad(parse, (dom, options) =>
options.xmlMode || options._useHtmlParser2
? renderWithHtmlparser2(dom, options)
: renderWithParse5(dom)
);
cheerio/src/parsers/parse5-adapter.ts
import { adapter as htmlparser2Adapter } from 'parse5-htmlparser2-tree-adapter';
const renderOpts = { treeAdapter: htmlparser2Adapter };
related
milahu commented
closing, i dont need this