【发布时间】:2012-09-18 20:52:52
【问题描述】:
我想从YouTube 观看历史记录中获取最新视频。我正在使用以下代码,但视频大小总是不同,很少等于 100。我该如何解决这个问题?
YouTubeRequestSettings ytSettings = new YouTubeRequestSettings(AppKey, DevKey, currentLogin, currentPassword);
ytSettings.PageSize = 10;
ytSettings.AutoPaging = true;
YouTubeRequest ytRequest = new YouTubeRequest(ytSettings);
string uri = "https://gdata.youtube.com/feeds/api/users/default/watch_history?v=2";
Feed<Video> videos = ytRequest.Get<Video>(new Uri(uri));
List<string> vids = new List<string>();
foreach (Video vid in videos.Entries)
{
if (vids.Count < 100)
{
vids.Add(vid.VideoId.ToString());
}
else
{
break;
}
}
【问题讨论】:
-
您的代码对我来说实际上运行良好,您可以尝试使用不同的提要(例如
https://gdata.youtube.com/feeds/api/channelstandardfeeds/most_viewed?v=2)来查看问题是否仍然存在? -
我用gdata.youtube.com/feeds/api/channelstandardfeeds/… feed 试了 5 次,对我来说效果很好。 (视频大小始终为 99)。但是观看历史记录提要视频的大小为 100、18、80、100、0
-
这让我觉得这是 API 本身的问题,所以你在 YouTube API 论坛上的帖子可能是你最好的选择。