我试图通过NodeJS& amp; Cheerio。我在互联网上尝试了很多解决方案,但我的结果总是空的。
网站我试图废弃: https://www.bodybuilding.com/exercises/dumbbell-bench-press
相关的HTML代码:
<div class="ExDetail" itemscope itemtype="http://schema.org/ExerciseAction">
<section class="ExDetail-section ExDetail-meta flexo-container flexo-start flexo-between">
<div class="grid-8 grid-12-s grid-12-m">
<h2 class="ExHeading ExHeading--h2 ExDetail-h2" itemprop="name">
Dumbbell Bench Press
</h2>
</div>
我试图获取文字:哑铃卧推
但是我已经尝试了所有我能做的事情。
我目前的代码:
request(url, function(error, response, html) {
if (!error) {
var $ = cheerio.load(html);
var name = $('h2.ExHeading.ExHeading--h2.ExDetail-h2').text();
console.log(name);
var json = {
name: name
};
res.send(json);
}
});
修改 添加了我尝试废弃的链接。
答案 0 :(得分:2)
答案:在标题中添加假用户代理可以解决问题!