javascript - 如何使用cheerio提取文本

标签 javascript node.js web-scraping cheerio

我正在尝试使用 NodeJS 和 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);
  }

});

编辑: 添加了我正在尝试废弃的链接。

最佳答案

答案:在 header 中添加假用户代理解决了问题!

关于javascript - 如何使用cheerio提取文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50548207/

相关文章:

javascript - 在带有原型(prototype)的 Javascript 中使用此关键字?

node.js - 如何更新passportjs设置的req.user session 对象?

PHP - 有什么方法可以控制流程执行吗?

web-scraping - 我怎样才能只为导航菜单抓取网站

javascript - Mongodb $inc 嵌入值语法

javascript - 在 Laravel 中使用 Ajax 时出现 500 Internal Server Error

python - 尝试部署到 Scrapy Cloud 时出现需求错误

Python 抓取加密比较

javascript - JavaScript 中处理位压缩的最有效方法

javascript - 按下后退按钮时避免图像闪烁