【发布时间】:2015-12-02 23:07:06
【问题描述】:
如果我将最大结果设为 400,它将产生异常,因为它应该在 0-50 到 400 之间。 所以现在为了测试我做了 50 次。
我怎样才能让当它找到 50 个结果并将它们添加到列表中时,它会再次搜索下一个 50 个结果,依此类推直到结束?
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System;
using System.IO;
using System.Reflection;
using System.Threading;
using System.Threading.Tasks;
using Google.Apis.Auth.OAuth2;
using Google.Apis.Services;
using Google.Apis.Upload;
using Google.Apis.Util.Store;
using Google.Apis.YouTube.v3;
using Google.Apis.YouTube.v3.Data;
namespace Automatic_Record
{
class Youtube_Retrieve_Uploads
{
public Youtube_Retrieve_Uploads()
{
test();
/*try
{
Run().Wait();
}
catch (AggregateException ex)
{
foreach (var e in ex.InnerExceptions)
{
Console.WriteLine("Error: " + e.Message);
}
}*/
}
private void test()
{
YouTubeService yt = new YouTubeService(new BaseClientService.Initializer() { ApiKey = "AIzaSyDcqx8nMWQL9wshpAs0Q-h0twpGd6R1BJM" });
List<string> videos = new List<string>();
var searchListRequest = yt.Search.List("snippet");
searchListRequest.ChannelId = "UCUE_2qgW-nJOjOlO28uZHtQ";//"UCbe-iLd-TEl3_YQaNSm8dng";
searchListRequest.MaxResults = 50;
var searchListResult = searchListRequest.Execute();
foreach (var item in searchListResult.Items)
{
if (item.Snippet.Title.StartsWith("Gta"))
{
videos.Add("ID: " + item.Id.VideoId);
videos.Add("SNIPPET: " + item.Snippet.Title);
}
}
}
这工作正常,但我只得到 50 个结果。我想从 Gta 开始获取整个视频,但一般来说,我想获得前 50 个结果,然后是下一个 50 个,然后是下一个 50 个,直到没有更多结果。
【问题讨论】: