【问题标题】:Youtube API Activities return at maximum 256 activity instead of 297 activityYoutube API 活动最多返回 256 个活动而不是 297 个活动
【发布时间】:2023-03-17 00:30:01
【问题描述】:

我在一些关于 YouTube API Activities list 的问题案例中感到困惑 端点最多为我带来 256 个项目,因为频道有超过 256 个活动。

根据此频道 (UC9zTuyWffK9ckEz1216noAw) 有 297 个视频(活动),而端点返回 256 个活动。

例子:

https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.activities.list?part=snippet%252CcontentDetails&channelId=UC9zTuyWffK9ckEz1216noAw&maxResults=50&_h=1&

  1. 首先,totalResults 每页都会发生变化!
  2. 最多返回 256 件物品!

【问题讨论】:

    标签: google-api youtube-api youtube-data-api


    【解决方案1】:

    我知道这是一个旧线程,但如果有人遇到与 OP 相同的问题,我想出了一个解决方案。

    正如 OP 所提到的,出于某种原因,Activities: list 的最大限制为 256 个活动,即使 documentation 中没有提到它。

    但是,由于Activities: list 允许我们使用publishedBeforepublishedAfter 作为参数,我们可以尝试使用将publishedBefore 设置为DateTime.Now() 的视频转换为ISO 8601 (YYYY-MM- DDThh:mm:ss.sZ) 格式。

    https://www.googleapis.com/youtube/v3/activities?part=snippet,contentDetails&maxResults=50&publishedBefore=[DateTime.Now() in ISO 8601 format]&channelId=[Channel_Id]&key=[Your_API_Key]
    

    这将返回在指定日期之前发布的 50 个视频及其详细信息,包括 publishedAt。然后对于接下来的 50 个活动,您可以从返回的列表中获取最后一项,并将转换为 ISO 8601publishedAt 值作为新的 publishedBefore 参数传递。并重复此方法,直到通过检查 nextPageToken 是否返回 null 来获取所有视频。

    【讨论】:

      【解决方案2】:

      来自activities.list的文档

      nextPageToken 字符串
      可用作 pageToken 参数值的令牌,用于检索结果集中的下一页。

      您将需要使用 NextPage 令牌来获取附加结果

      "kind": "youtube#activityListResponse",
       "etag": "\"DuHzAJ-eQIiCIp7p4ldoVcVAOeY/CDAYwe0RayreWUk1bUL79fvoRUw\"",
       "nextPageToken": "CDIQAA",
       "pageInfo": {
        "totalResults": 108,
        "resultsPerPage": 50
       },
      

      例子

      https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.activities.list?part=snippet%252CcontentDetails&channelId=UC9zTuyWffK9ckEz1216noAw&maxResults=50&pageToken=CDIQAA&_h=2&

      【讨论】:

      • 您好 DalmTo,感谢您的回答 :) 这正是我正在做的,但如果您注意到 API 返回 256 个项目而不是 299 个项目,那就是问题
      • "totalResults": 108,
      猜你喜欢
      • 2022-01-18
      • 2021-07-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多