0

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 のビデオがあります。

上記のコードは、512Kbps 接続で実行するのに 15 分かかります。これは、すべてのビデオのすべての情報を取得し、非常に遅く、多くのサーバー リソースを浪費するためです。videoId のみを取得するように上記のコードを変更することはできませんか? すべての動画の videoId のみを取得するにはどうすればよいですか?

4

1 に答える 1

0

.NET YOUTUBE API の現在の制限により、VIDEOID のみを取得することはできません。

于 2012-07-03T05:59:11.070 に答える