javascript – 如何将Cheerio DOM节点转换回html?

使用下面的HTML,我试图提取每个段落的html.但是,我找不到任何方法将节点转回HTML或查询对象.

下面是一个字符串var html = …

<article>
    <p> p1 </p>
    <p> p2 </p>
</article>

html就这样加载了

var $= require('cheerio').load(html)
var paragraphs = $('p').toArray().map(p => /* I want the html at this point */ )

如何获取这些段落的HTML?

注意:为清楚起见,我调用cheerio.load的返回值为“查询对象”并返回toArray方法DOM节点;缺乏一个更好的短语.

解决方法:

你可以使用$.html:

var paragraphs = $('p').toArray().map(p => {
    console.log($.html(p));
    return $.html(p);
});

documentation显示了使用选择器的示例,但是cheerio DOM元素也按预期工作:

If you want to return the outerHTML you can use $.html(selector):

$.html('.pear') //=> <li class="pear">Pear</li>

上一篇:【重学Node.js 第4篇】实现一个简易爬虫&启动定时任务


下一篇:Linux下Setuid命令!