npm 包 @epegzz/node-scraper 使用教程

AI 编程助手,豆包旗下的编程助手,提供智能补全、智能预测、智能问答等能力,节省开发时间,释放脑海中的创造力,支持 VSCode,点击体验 AI

npm 包 @epegzz/node-scraper 使用教程

如今对于前端工程师来说,爬取数据不再是一个孤立的需求,他们需要收集不同网站上的数据以不同的形式呈现在自己的网站上。而 @epegzz/node-scraper 这个 npm 包则提供了一种方便快捷的方式去实现数据爬取。

什么是 @epegzz/node-scraper?

@epegzz/node-scraper 是一个 Node.js 环境下的 web 爬虫工具, 支持在常见的 web 页面中获取特定元素的值,它可以轻松地在网站上爬取指定数据并返回。

安装

使用 NPM 进行安装:

--- ------- --------------------

示例代码

----- ------- - --------------------------------
----- ------- - --- ----------

-- --------
----------------
    ---- ---------------------------
    ------- ------
    ---------- -
        ------ ------- ----
        ------------ ------- ----
        ------ -
            --------- ------
            ----- ------
            -------- -----------------------------------------
        --
        ------ -
            ----- ----
            ----- ------
        --
        -------- -
            --------- -----------
            ----------- -
                ------ -----------------
                ------ -----------------
                ------ -
                    --------- -----------------
                    ----- ------
                    -------- -----------------------------------------
                -
            -
        -
    -
------------ -- -
    ------------------
------------ -- -
    ---------------------- ------- -----
---

规则定义

URL

配置爬取数据的网站 URL。

---- --------------------------

Method

获取网站数据的方式。支持的方法有:GET、POST、PUT 和 DELETE。

------- -----

Selectors

表示你要爬取的数据的定义方式,selectors 是一个对象,可以其中包含多个键值对,每个键值对对应了对应 DOM 元素的查询方式。

例如:

---------- -
    ------ ------- ----
    ------------ ------- ----
-

这样我们就成功的查询了页面中 <header> 元素下的 <h1><h2> 元素,并且成功的将遍历的结果放在了 titledescription 里面,通过返回的数据可以直接使用。

目前支持的格式有:

-- ----------
--------- ----
--------- ----------
--------- --------- --- ---------------

-- ----------
----- ----
----- -----------
----- ---------- - --
----- -
    --------- 
    -
        --------- ---------------------
        ----- --------
        -------- --- ----- ------
    -
--

-- -----------
----------- -
    ------ -----------------
    ------ -----------------
    ------ -
        --------- -----------------
        ----- ------
        -------- -----------------------------------------
    -
-

其中,properties 类型的选择器支持更深的嵌套结构。

特定属性的获取

有时候我们还需要更 加精准的指定属性,此时我们可以直接指定:

------ -
    --------- ------
    ----- ------
    -------- -----------------------------------------
-

其中,我们指定了需要查询的 img 元素,并且只需要其中包含的 src 属性。 此外,如果我们所要查询的元素不支持 src 属性,那么可以直接在 default 里刻画一张默认图片。

链式查询

如果同一个爬虫中需要反复查询不同链接,那么我们很可能需要考虑用链式查询的方式进行,例如:

-------
    ---------
        ---- ---------------------------------
        ---------- -
            ------ ------- ---
        -
    --
    ---------- -- -
        ------------------
    --
    -------- -- -
        ------ ----------------
            ---- ---------------------------------
            ---------- -
                ------ ------- ---
            -
        ---
    --
    ---------- -- -
        ------------------
    --
    ---------- -- -
        -------------------
    ---

最后的话

相信在文章中我们已经了解了如何使用 @epegzz/node-scraper,以及如何通过它支持我们需要的数据获取流程,这对于完善前端工作流会有很大的意义。

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/60066e19a563576b7b1ecb87


猜你喜欢

  • npm 包 good-injector 使用教程

    前端开发中,依赖注入是一种常见的开发模式。通过依赖注入,我们可以更好地解耦模块之间的依赖关系,提高代码的可复用性。 好消息是,在 npm 上有一个名为 good-injector 的包,它提供了一种简...

    4 年前
  • npm 包 good-influxdb 使用教程

    简介 good-influxdb 是一个基于 Node.js 平台并使用 InfluxDB 数据库的记录器,用于前端监控和统计数据的收集。该 npm 包可以将前端应用程序的日志信息记录到 Influx...

    4 年前
  • npm 包 good-influxdb-test 使用教程

    好的工具可以帮助我们更加高效地完成任务,npm 包 good-influxdb-test 就是一款可以快速测试 InfluxDB 数据库连接的工具。在前端开发过程中,如果需要使用 InfluxDB 数...

    4 年前
  • npm 包 gm.drag-drop 使用教程

    前言 在前端开发过程中,经常会有需要实现拖拽功能的需求,例如拖拽图片上传、组件拖拽等。而 gm.drag-drop 就是一个为开发者提供方便的拖拽功能的 npm 包。

    4 年前
  • npm 包 gm.waits-for 使用教程

    在前端开发中,我们经常需要处理图片。gm 是一个使用 Node.js 实现的图像处理库,可以很方便的实现图片的裁剪、缩放、旋转、添加水印等功能。 然而,在某些场景下,我们需要等待图片处理完成之后再执行...

    4 年前
  • npm 包 gm2dev-bolierplate 使用教程

    什么是 npm 包 gm2dev-bolierplate? npm 包 gm2dev-bolierplate 是一个前端开发框架,能够帮助开发者快速搭建前端项目,并集成了多个常用的插件和工具,如 We...

    4 年前
  • npm包gm_theme使用教程

    介绍 Node Package Manager(npm)是一个包管理器,它允许用户与其他开发人员在 Node.js 的包环境中共享和重复使用代码。GM_theme是一个npm包,用于快速在前端应用程序...

    4 年前
  • npm 包 godot-dash 使用教程

    在前端开发中,我们经常需要使用各种各样的库和框架来方便我们的开发。其中,npm 是目前最常用的包管理工具之一。在 npm 上,有很多优秀的前端库可以让我们的开发效率更高,而 godot-dash 就是...

    4 年前
  • npm 包 google-maps-services-node 使用教程

    前言 在全球范围内,Google Map 已经成为最为流行的地图服务提供商。Google Maps API 为开发者提供了强大的地理信息系统,其中也包括了一些方便的工具来完成地图相关的操作。

    4 年前
  • npm 包 google-maps-zoom 使用教程

    在前端开发中,地图是一个常用的功能。而 Google Maps API 就是其中一个使用率很高的地图。为了方便地使用 Google Maps API 中的缩放功能,开发者们经常使用 google-ma...

    4 年前
  • npm 包 google-marker-clusterer-plus 使用教程

    前言 在网页应用程序中,标记聚合是一种适用于大规模地展示地理位置数据的方式。 Google Maps API 提供了一个叫做 MarkerClusterer 的库来实现标记聚合。

    4 年前
  • NPM 包 good-kinesis 使用教程

    在前端开发中,经常需要从云端流媒体服务中获取数据。AWS Kinesis是一个非常流行的云端流媒体服务。但是,使用Kinesis SDK需要学习Java或Python等语言,对于前端开发人员来说可能会...

    4 年前
  • npm 包 good-le 使用教程

    简介 good-le 是一个轻量级的 JavaScript 库,用于实现各种基础数据类型的校验。它可以在前端和后端环境中使用,旨在提供一个方便的方式来验证数据的正确性。

    4 年前
  • npm 包 good-logentries 使用教程

    在前端开发中,日志记录是非常重要的一项功能。它可以帮助我们追踪应用程序的状态,诊断问题并监控性能。在这里,我们将介绍一个非常有用的 npm 包 good-logentries,它可以帮助我们将应用程序...

    4 年前
  • NPM 包 good-loggly 使用教程

    随着前端技术的不断发展,日志记录已经成为了一个不可或缺的工具。而 good-loggly 便是一个非常有用的 npm 包,它可以帮助我们快速地实现日志记录功能。在本篇文章中,我将详细地介绍 good-...

    4 年前
  • npm 包 good-logentries-fg 使用教程

    npm 是 Node.js 的包管理器,它允许开发者将自己编写的代码打包成一个个可复用的模块,供其他人使用。good-logentries-fg 是一个用于实时记录日志的 npm 包。

    4 年前
  • npm 包 godot-riemann 使用教程

    简介 godot-riemann 是一个使用 Riemann 报告器与 Godot 引擎通信的 npm 包。Riemann 是一个流处理系统,用于实时处理和分析事件流。

    4 年前
  • npm 包 godot-sensortag 使用教程

    随着物联网技术的迅速发展,越来越多的硬件设备开始与互联网相连接。其中的一个关键技术即为传感器。而通过传感器获取到的数据则可以用来进行数据分析、机器学习等各种操作。作为前端开发人员,我们需要用到一些 N...

    4 年前
  • npm包godot2-dash使用教程

    我们都知道,现在的前端开发已经非常依赖于各种npm包。而在这些包中,godot2-dash是一款非常实用的包,可以帮助我们快速构建美观易用的仪表盘。在本文中,我们将详细介绍如何使用godot2-das...

    4 年前
  • npm 包 goear_api 使用教程

    Goear 是一款流行的在线音乐播放器,它提供了各种音乐资源。npm 包 goear_api 可以用来获取 Goear 上的音乐信息,并将信息呈现在前端页面上。在这篇文章中,我们将深入介绍如何在前端中...

    4 年前

相关推荐

    暂无文章