【问题标题】:Unable to extract an html fragment using cheerio无法使用 Cheerio 提取 html 片段
【发布时间】:2013-06-27 15:12:11
【问题描述】:

我正在使用cheerio 在节点 js 服务器上执行一些 html 操作。我有一个这样的 html 字符串

var htmlString =" <ol>
  <li>
  <p>item1</p>
 </li>
 <li>
  <p>item2</p>
</li>
<li>
  <p>item 3</p>
</li>
   <li>
   <p>item 4</p>
</li>
</ol>
 <p>First paragraph</p>
<p>second paragraph</p>
<p>Third paragraph</p>
"

 var $ = cheerio.load(htmlString);
var dummy = $("<div></div>")
var item = dummy.append($("*").slice(0,3).clone()).html();

返回的输出是

 <ol>
  <li>
  <p>item1</p>
 </li>
 <li>
  <p>item2</p>
</li>
<li>
  <p>item 3</p>
</li>
   <li>
   <p>item 4</p>
</li>
</ol>

<li>item1</li>
<p>item1</p>

我期望的输出是ordered list,然后是paragraph1,然后是paragraph2

我做错了什么还是cheerio中的错误?

【问题讨论】:

    标签: node.js cheerio


    【解决方案1】:

    在折腾了一整天的代码后,我终于找到了解决方案。显然我错误地加载了 html 片段。这对我有用

    var $ = cheerio.load();
    var dummy = $("<div></div>")
    var item = dummy.append($(htmlString).slice(0,3)).html();
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-31
      • 1970-01-01
      • 2023-03-03
      • 2023-03-18
      • 2014-10-28
      • 1970-01-01
      • 2015-10-11
      • 2023-02-06
      相关资源
      最近更新 更多