代码之家  ›  专栏  ›  技术社区  ›  Kirdus

使用YouTube v3 API c获取YouTube视频的视频持续时间#

  •  1
  • Kirdus  · 技术社区  · 6 年前

    我尝试获取我之前搜索过的视频的长度,使用youtube v3 API,您可以在nuget下载。组织。

    我知道有很多解决方案,但它们总是用php编写的。

    这就是我现在使用的代码:

    var searchListRequest = youtubeService.Search.List("snippet");
    earchListRequest.Q = Find;
    searchListRequest.MaxResults = 5;
    
    
    
    var searchListResponse = await searchListRequest.ExecuteAsync();
    foreach (var searchResult in searchListResponse.Items)
            {
                switch (searchResult.Id.Kind)
                {
                    case "youtube#video":
                    break;
                }
            }
    

    感谢您的帮助:)

    1 回复  |  直到 6 年前
        1
  •  2
  •   KHL    6 年前

    您可以下载视频的Json版本:

        WebClient myDownloader = new WebClient();
        myDownloader.Encoding = System.Text.Encoding.UTF8;
    
       string jsonResponse=myDownloader.DownloadString(
       "https://www.googleapis.com/youtube/v3/videos?id=" + yourvideoID+ "&key=" 
       + youtubekey + "&part=contentDetails");
       dynamic dynamicObject = Json.Decode(jsonResponse);
       string tmp = dynamicObject.items[0].contentDetails.duration;
       var Duration = Convert.ToInt32
       (System.Xml.XmlConvert.ToTimeSpan(tmp).TotalSeconds);