npm 包 youtube-api 使用教程

阅读时长 10 分钟读完

介绍

youtube-api 是一个用于在 Node.js 环境下通过 YouTube 数据 API 与 YouTube 进行交互的 npm 包。它提供了各种方法,可以帮助您获取有关视频、频道、评论等信息或执行其他各种操作。

在本文中,我们将讨论如何在项目中使用 youtube-api 包,以及如何将其集成到您的应用程序中。

安装

要安装 youtube-api,您需要使用 npm 包管理器。可以通过以下命令安装:

配置

为了使用 youtube-api 包,您需要了解 YouTube 数据 API 的工作方式。您需要创建一个 Google 帐户并使用它登录到 Google API 控制台。在那里,您需要创建一个项目并启用 YouTube 数据 API。

在您的项目中,您需要创建一个 OAuth2 客户端 ID。 在这里,您可以为您的 Web 应用程序生成客户端 ID。

在通过 OAuth2 权限授权访问 YouTube 公开数据资源之前,您需要获取访问令牌。这需要在终端上运行命令,使用你的客户端 ID 和密钥:

有关详细信息,请查看 Google OAuth2 资源。

现在,您可以创建 YouTube API 的配置对象:

在上面的代码中,您需要将 REFRESH_TOKEN 替换为本地存储的令牌。

使用

现在,您已准备好使用 youtube-api 包从 YouTube 检索和上传视频或其他数据。

检索视频

让我们从一个模块开始,该模块包括一个从 YouTube API 中检索视频的函数。

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

----- -------- ------------------- -
    ----- -------- - ----- --------------------
        ----- -------------
        ----- -------------
        --- -------
    ---
    ------ -----------------------
-
展开代码

在此示例中,我们通过传递视频 ID 获取视频的标题、描述、发布日期和其他详细信息。

上传视频

让我们看一下上传视频的示例代码。

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

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

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

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

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

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

                ----------------
            ---
        ---
    ---
-
展开代码

在此示例中,我们使用 ResumableUpload 类进行视频的上传。 我们还指定视频的元数据,包括视频标题、描述、隐私设置和所属的 YouTube 类别。

示例

下面是一个完整的示例,该示例将从 YouTube 拉取一个视频,然后将其上传到您的帐户。 它还演示了如何使用高级启用功能,例如审查状态、跟踪上传进度和提供通知。

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

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

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

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


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


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

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

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

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

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

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


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

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

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

----------------------------
展开代码

结论

在本文中,我们讨论了如何使用 npm 包 youtube-api 在 Node.js 环境下与 YouTube 数据 API 进行交互。 我们提供了一个简单的示例,演示了如何从 YouTube 拉取视频、上传视频和提供通知。如果你还没有使用 youtube-api,这篇文章可以帮助您入门,并在将来的项目中运用它。

参考

  1. YouTube Data API Overview. https://developers.google.com/youtube/v3/
  2. YouTube Data API - Google APIs. https://console.developers.google.com/
  3. Google Developers. API Console. https://console.developers.google.com/flows/enableapi?apiid=youtube#l86
  4. Google’s OAuth2 Specification. https://tools.ietf.org/html/rfc6749
  5. node-youtube-resumable-upload. https://www.npmjs.com/package/node-youtube-resumable-upload

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