Youtube .NET Data API:仅检索videoID?

时间:2012-06-10 10:55:21

标签: c# optimization youtube youtube-api youtube.net-api

我使用youtube的.NET API来检索视频源,这里是代码:

        String[] ids;
        YouTubeRequestSettings settings = new YouTubeRequestSettings("My App Name", "My App Key");
        YouTubeRequest request = new YouTubeRequest(settings);
        Uri uri =
        new Uri("http://gdata.youtube.com/feeds/api/users/nptelhrd/uploads?max-results=50");//Change "GoogleDevelopers" to "default"
        Google.GData.Client.Feed<Video> videoFeed = request.Get<Video>(uri);
        ids = new String[videoFeed.TotalResults];

        int count = 0;
        for (int i = 0; i < 50; i++)
            ids[i] = videoFeed.Entries.ElementAt(i).VideoId;
        for (int i = 50; i < ids.Length-50; i+=50)
        {

            Uri uri2 =
   new Uri("http://gdata.youtube.com/feeds/api/users/nptelhrd/uploads?max-results=50&start-index=" + i.ToString());//Change "GoogleDevelopers" to "default"
            Google.GData.Client.Feed<Video> videoFeed2 = request.Get<Video>(uri);
            for (int j = 0; j < 50; j++)
            {
                ids[i+j] = videoFeed2.Entries.ElementAt(j).VideoId;
                count++;
            }
        }

以上代码返回用户“nptelhrd”上传的每个视频的所有信息(标题,描述,ViewCount,评级等)。此特定用户上传了6950个视频。

上面的代码需要15分钟才能在512Kbps连接上执行,因为它检索每个视频的所有信息,它的速度很慢,浪费了大量的服务器资源。不能修改上面的代码,以便它只检索videoId?我怎样才能检索所有视频的videoId?

1 个答案:

答案 0 :(得分:0)

由于.NET YOUTUBE API目前存在局限性,因此无法仅检索VIDEOID。