Node.js 什么是NPM中的Request和Cheerio
在本文中,我们将学习有关Node.js中的request和cheerio库的内容以及它们的安装。
Request库:
请求模块是Node.js中非常流行的库。它通过使用HTTP请求来向外部网络应用发送请求,实现客户端和服务器之间的通信。
HTTP(或超文本传输协议)用于通过解析发送的请求来发送请求并接收响应,响应可以是JSON或HTML格式。
它还可以用于与API(应用程序编程接口)建立通信。
安装:
npm install request
如何在环境中要求请求:
const request = require('request')
语法:
request (url of web-application,
function to handle the response and the error)
示例: 让我们通过下面的实现来理解:
const request = require('request');
request('https://www.geeksforgeeks.org//',
function (error, response, html) {
if (error && response != 200) {
console.log(error);
} else {
console.log(html);
}
});
运行应用程序的步骤: 在终端中输入以下代码来运行应用程序:
node app.js
输出:
说明: 首先,我们向一个外部的web应用发送了一个HTTP请求,然后我们检查是否有任何错误展示该错误,否则通过传递一个函数给我们一个HTML代码的响应。
Cheerio库:
Cheerio是一个用于解析标记语言的工具,并提供了许多任务的API,例如解析、操作和渲染,与DOM API相比效率更高、更快。
注意: Cheerio是一个很好的库,根据您的需求使用它,但不要试图将其与DOM API进行比较,因为DOM是由Web浏览器引擎提供的,可以执行许多Cheerio无法执行的任务,如Cheerio无法解释结果,也无法产生任何可视化渲染,而这些是由Web浏览器API(如DOM等)完成的。
安装:
npm install cheerio
如何在环境中使用cheerio:
const cheerio = require('cheerio)
语法:
const selTools = cheerio.load('html code with tags')
示例: 让我们通过下面的实现示例来理解:
步骤1: 首先,我们将创建如下所示的HTML文件:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible"
content="IE=edge">
<meta name="viewport"
content="width=device-width, initial-scale=1.0">
<title>Cheerio And Request</title>
<style>
.title {
text-align: center;
}
ul,
p {
font-size: larger;
font-weight: 400;
}
</style>
</head>
<body>
<h1 class="title">Geeks for Geeks</h1>
<p>Lists of Streams</p>
<ul id="streams">
<li id="cse">CSE</li>
<li id="it">IT</li>
<li id="me">ME</li>
<li id="ece">ECE</li>
</ul>
<p id="finish">End of the Page</p>
<script src = "fileName.js">
</script>
</body>
</html>
步骤2: 现在,我们将创建一个名为 fileName.js 的JavaScript文件,该文件已经在上面的HTML中包含,用于通过cheerio库访问HTML代码并操纵数据。
// Here we have required the install cheerio library
const cheerio = require('cheerio');
const selTools = cheerio
.load('<h1 class="title"> Geeks for Geeks </h1>')
selTools('h1.title').text('GFG');
selTools('h1').addClass('changed-title');
let store = selTools.html();
// Here we have displayed modified html
console.log(store);
运行应用程序的步骤: 在终端中输入以下代码来运行应用程序:
node fileName.js
输出:
说明: 首先,我们加载了要进行操作的HTML,然后使用text方法更改所选HTML的标题,然后使用addClass方法显示标题已更改,最后我们显示被操作后的HTML以查看我们得到的结果。