使用谷歌数据API获取结果的数据不完整

问题描述 投票:0回答:1

我想使用 appscript 和 google data API v3 从频道检索最后 50 个视频数据。记录器成功显示了从今天到 6 月的 50 条数据。但很多11月的视频数据都没有索引。

这是我制作的脚本


var apiKey = 'my API';
var channelId = 'UCAoy6rzhSf4ydcYjJw3WoVg'; 

function fetchRecentVideos() {
  var apiUrl = 'https://www.googleapis.com/youtube/v3/search';

  var videos = [];

  var params = {
    'part': 'snippet',
    'channelId': channelId,
    'type': 'video',
    'maxResults': 50,
    'order': 'date', 
    'key': apiKey
  };

  var response = UrlFetchApp.fetch(apiUrl + '?' + encodeParams(params));
  var result = JSON.parse(response.getContentText());

  for (var i = 0; i < result.items.length; i++) {
    var video = result.items[i].snippet;
    Logger.log('Video Title:'+ video.title);
    Logger.log('Published Date:'+ video.publishedAt);
    Logger.log('--------------------');
  }
}

function encodeParams(params) {
  return Object.keys(params)
    .map(function (key) {
      return encodeURIComponent(key) + '=' + encodeURIComponent(params[key]);
    })
    .join('&');
}

google-apps-script youtube-data-api
1个回答
0
投票

我尝试将publishedAfter添加到参数中,因此输出将全部完整并按最新的顺序输出。 如果使用publishedBefore,这不起作用


var params = {
    'part': 'snippet',
    'channelId': channelId,
    'type': 'video',
    'maxResults': 50,
    'order': 'date',
    'publishedAfter': '2010-01-01T00:00:00Z',
    'key': apiKey
  };

© www.soinside.com 2019 - 2024. All rights reserved.