1

我是第一次尝试 javascript,但我在这个例子中遇到了这个问题:

https://www.twilio.com/blog/web-scraping-and-parsing-html-with-node-js-and-cheerio

这是一个使用 got 和cheerio 的网络爬虫示例,我已经安装了这两个。但是当我运行示例代码时,它给了我“无法将未定义或空值转换为对象错误”。

这是为什么?我根本没有改变示例中的任何内容。

有问题的代码:

  const $ = cheerio.load(response.body);

  $('a').each((i, link) => {
    const href = link.attribs.href;
    console.log(href);
  });
}).catch(err => {
  console.log(err);
});```
4

1 回答 1

0

您的 index.js 文件看起来如何?我完成了教程,我的代码正在运行。也许你错过了输入网址?

这是我的 index.js

const fs = require("fs");
const cheerio = require("cheerio");
const got = require("got");

const vgmUrl = "https://www.vgmusic.com/music/console/nintendo/nes";

got(vgmUrl)
  .then((response) => {
    const $ = cheerio.load(response.body);
    $("a").each((i, link) => {
      const href = link.attribs.href;
      console.log(href);
    });
  })
  .catch((err) => {
    console.log(err);
  });
于 2022-01-25T06:17:19.927 回答