我正在使用cheerio 和node.js 来解析网页,然后使用css 选择器在其上查找数据。Cheerio 在格式错误的 html 上表现不佳。jsdom 更宽容,但两者的行为不同,我已经看到在某些情况下另一个工作正常时两者都会中断。
在创建 DOM 时,Chrome 似乎在使用相同格式错误的 html 方面做得很好。
如何复制 Chrome 从格式错误的 HTML 创建 DOM 的能力,然后将此 DOM 的“清理”html 表示形式提供给cheerio 进行处理?
这样我就知道它得到的 html 格式正确。我通过设置 page.content 尝试了 phantomjs,但是当我读取 page.content 的值时,html 仍然格式错误。