简介
metascrape 是一个可以通过一系列简单的 API 特征轻松提取网页元数据的 Node.js 插件。它支持 Open Graph, JSON-LD, Microdata 和其他描述性数据的解析。metascrape 可以帮助前端开发人员快速地获取网页元数据,帮助他们更快,更准确地了解网站的信息架构和内容。
安装
在 Node.js 项目中安装 metascrape 的方法非常简单。只需运行以下命令即可:
npm install metascrape
API
metascrape 可以解析多个 API 特征,并通过 Promise 链式调用原则实现。
以下是 metascrape 可以解析的元数据标记:
- HTML 源码中的 meta 标签
- Schema.org Microdata
- JSON-LD
- OpenGraph(社交媒体信息)
- RDFa
1. .scrape(htmlString)
该方法将 HTML 字符串作为参数,返回一个 Promise。 该 Promise 将解析元数据并将 JSON 数据传递回调函数。
例如:
-- -------------------- ---- ------- --- ---------- - ---------------------- --- ---- - ------------------------- ------------------- ------------------ -------------- ----- -------------------------------- ---------------------- ------------------------------------------------ ---------------------- -- - ------ ------ -------- ------------ ------ ----- ------------- - -- ---
2. .parse()
该方法返回一个 Promise,该 Promise 将解析当前 HTML 文档的所有元数据。它还可选地在递归深度上限和要解析的最大头部限制之间接受两个参数。
例如:
-- -------------------- ---- ------- --- ---------- - ---------------------- --- ---- - ------------------------- ------------------- ------------------ -------------- ----- -------------------------------- ---------------------- ----------------------------------------------- ---------------------- -- - ------ ------ -------- ------------ ------ ----- -------------- --------- ---------- ---- ------------------------- ------- ----- ----- --- - -- ---
3. .scrapeUrl(url)
该方法将 URL 作为参数,返回解析该 HTML 文档的元数据的 Promise。
例如:
-- -------------------- ---- ------- --- ---------- - ---------------------- ---------------------------------------------------------------------- ---------------------- -- - ------ --------- ------------ ------- --- -------- ------------ --------- --------- ------- ------ --- ----- ------ --- ---- ------- -------- -- ---- --- ---- ------- ---- ------- ------- ----- - -- ---
示例
这里是一个完整的演示 示例,它演示了如何使用 metascrape 获取一个网站的标题,描述和 Open Graph 值。
var metascrape = require('metascrape'); metascrape.scrapeUrl('http://www.youtube.com').then(function(metadata){ console.log(metadata); });
返回的数据会包含以下键值:
-- -------------------- ---- ------- - ------ ---------- --------- ------- -------- ------ ------ ----- ------ ----- -------- ------------ ------ --- ------ --- ----- --- ----- ------ -------- -------- --- ----- -- --- ---- -------- ------- --- --- ----- -- ---------- -------- --------------------- --------- -------------------- ----------------- -------- - ----- ---------------------- ----- ----------- ------ --------- -------- - --------- ------------ -------- -------- ---------- ------ ---------------------------------------------------- -------------- ------- --------------- ----- -- --- - ------ --------- -------- - --------- ------ ---------------------------------------------------- ------------ -------- -------- ---------- ---------- ---------- ---- --------------------------- ----- --------- -- ----- - -- --------- - -
因此,这个例子可以让你很容易地获取到你所想要的信息。
结论
metascrape 是一个非常流行的模块。 这个模块不只是获取简单的标题和描述信息,也包括了 OpenGraph 和其他元数据。 这些信息可用于优化和帮助分析网站的内容。 总的来说,使用 metascrape 这个插件可以让你轻松地获取网页的元数据,从而更快更精确地理解整个网站的信息架构和内容。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60066f441d8e776d08040ecf