Cheerio不返回嵌套在多个其他标签之间的<p id="target-content">
标签的内容。我使用cheerio并提出要求。我的代码看起来像这样,但是它总是返回null
。
我尝试获取ID为id=target-content
的段落的内容。
var webpage = '...';
request(webpage, function(err, res, body) {
if (err) console.err(err);
if (res.statusCode === 200) {
var $ = cheerio.load(body);
$('p[id="target-content"]').text(); // returns null
}
});
<body>
<div id="foobar">
<div>...</div>
<div>...</div>
<div>...</div>
<section id="foo">
<header></header>
<section id="bar">
<div></div>
<div></div>
<section id="container">
<p id="target-content">
Stackoverflow is amazing.
</p>
</section>
</<section>
</section>
</div>
</body>
我期望输出Stackoverflow is amazing
,但是我得到null
或根本没有输出。感谢您的帮助。非常感谢。
答案 0 :(得分:0)
if (err) console.err(err);
,所以我认为您不需要再次启动条件if(res.statusCode === 200)
。但这是可选的console.log(res.statusCode)
,以检查res.statusCode
中包含的内容console.log( $('p[id="target-content"]').text();)
或这样存储在变量中 const result = $('p[id="target-content"]').text();
console.log(result) //if still null, try ``console.log $('p[id="target-content"]').data`` again to check with other options, or ``console.log $('p[id="target-content"]')``
return result
我希望这个线索可以为您提供帮助