如何在 Node.js 中使用cheerio 抓取网络数据?
Node.js 是使用 chrome javascript 引擎构建的开源和跨平台环境。 Node.js 用于从浏览器外部执行 javascript 代码。
Cheerio:它的工作基于 jQuery。它完全适用于一致的 DOM 模型。 Cheerio 有时用于抓取网络数据,也用于自动化任务。
方法:在这篇文章中,我们废弃了world Meter一个covid info网站的数据,在这里我们得到了确诊病例总数,死亡总数,以及迄今为止康复的患者总数。
下面是分步实现:
第 1 步:输入 cmd 并键入以下命令,该命令将创建 package.json 文件
npm init
第 2 步:创建包后,您需要通过以下命令安装 Cheerio、request 和 chalk 的 JSON 文件:
npm install request cheerio chalk
第 3 步:现在您的项目目录如下所示:
第 4 步:现在我们创建index.js文件并编写以下代码:
index.js
const { Cheerio } = require("cheerio");
const request = require("request");
const cheerio = require("cheerio");
const chalk = require("chalk");
request("https://www.worldometers.info/coronavirus/", cb);
function cb(error, response, html) {
if (error) {
console.error("Error:", error);
} else {
handleItem(html);
}
}
function handleItem(html) {
let setTool = cheerio.load(html);
let contentArr = setTool("#maincounter-wrap span");
let total = setTool(contentArr[0]).text();
let death = setTool(contentArr[1]).text();
let recovered = setTool(contentArr[2]).text();
console.log(chalk.gray("Total cases:" + total));
console.log(chalk.red("Total Death:" + death));
console.log(chalk.green("Total cases:" + recovered));
}
输出:打开命令提示符并输入以下命令
node index.js