NPM包@nbcnews/machinist使用教程

阅读时长 6 分钟读完

简介

@mantsa-debilis/machinist是一个用于收录机器人和自动化工具的基于javascript和Node.js 的开发框架,它构建于 Node.js 中的 PuppeteerNode-cron 上。

安装

可以通过NPM包管理器进行安装:

快速上手

Puppeteer 基础

Puppeteer是一个高度可用的Node.js库,它提供了一个用于操纵Headless Chrome(即没有UI界面的谷歌浏览器)的API。我们可以使用Puppeteer编写基于Chromium的自动化测试,操作界面并收集数据。

以下代码展示了一个使用Puppeteer打开谷歌网站的示例:

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

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

@nbcnews/machinist的基本使用方法

在使用@mantsa-debilis/machinist之前,我们需要调用它的init()方法,该方法将返回一个新实例。

我们可以在Machinist构造函数内传递多个参数,其中一些重要的参数包括:

  • name: 机器人的名称
  • debug: 是否在调试模式下运行
  • headless: 是否在headless模式下运行

我们还可以使用Machinist提供的一些其他方法来构建和控制机器人。

任务调度

Machinist集成了Node-cron,使我们可以轻松地执行程序的定时任务。

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

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

在上述代码中,我们定义了一个name为“FindFriend”的计划任务,该任务每小时30分运行。我们还可以通过其他属性来自定义计划任务。

更多示例代码

以下是一个使用Machinist自动化登录网站并下载内容的示例。

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

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

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

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

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

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

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

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

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

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

在此示例中,我们首先使用Puppeteer自动化执行登录。然后我们使用cookies进行网页内容下载。我们将此任务计划在每天8点运行。

结论

@mantsa-debilis/machinist提供了一个优秀的基于Node.js的机器人和自动化工具框架。通过学习和使用Machinist,我们可以构建强大且高效的机器人和自动化工具。无论是用于简单的任务还是考虑复杂性,Machinist都是非常值得考虑的选择。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60066bcc967216659e244866

纠错
反馈