c# - 如何使用 Youtube API 检查视频观看是否受到限制?

标签 c# youtube youtube-api

视频可以被限制,如果它的视频被设置为对用户区域不可用,如果它是私有(private)的或者如果视频所有者设置了它可以显示的限制。我不想显示它们。
查询我目前拥有的东西:

Feed<Video> videoFeed = request.GetStandardFeed(
    "http://gdata.youtube.com/feeds/api/videos?v=2" +
    "&format=5&iv_load_policy=3&q=" + this.textBox1.Text);
最初,我构建了一个类型项目列表,它充当数据源。这里的前提条件也可以解决我的问题。
foreach (Video entry in feed.Entries) 
    dsList.Add(new item { ID = entry.VideoId, TITLE = entry.Title });
    
如何使用 Youtube API 检查视频观看是否受到限制?
编辑:
我假设,我可以使用:
foreach (Video entry in feed.Entries) 
    if (entry.Status == null)
        dsList.Add(new item { ID = entry.VideoId, TITLE = entry.Title });
但这至少有两个问题:
  • Youtube api 每次查询最多可以返回 10 个页面上的 50 个项目。最多 500 个项目 - 更多,然后在平均情况下使用。但是,如果受限内容具有更高的排序优先级(例如:主要唱片公司的音乐视频),那么 99% 或更多的结果可能会被丢弃。
  • 过滤器适用于大多数情况,但它似乎不适用于 (EMI : Coldplay - Every Teardrop Is A Waterfall (Official) ),它列在最受好评的视频源下。我不想显示:

  • enter image description here

    最佳答案

    YouTube API 包含一个名为 accessControl 的属性。这包括告诉您是否允许在移动设备和电视上嵌入和播放的字段。

    有关更多信息,请参阅此页面:
    https://developers.google.com/youtube/2.0/reference#youtube_data_api_tag_yt:accessControl

    关于c# - 如何使用 Youtube API 检查视频观看是否受到限制?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6405907/

    相关文章:

    c# - HtmlElement.Parent 返回错误的父级

    Android 在 webview 中播放 youtube 视频

    python - YouTube API 错误

    youtube - YouTube javascript最受欢迎的视频API

    javascript - 如何在不链接到播放列表的情况下播放两个 Youtube 视频?

    需要 Android API seekToMillis() 解释

    c# - 如何从类创建 XSD 模式?

    c# - 如何同时调用此构造函数和基本构造函数

    c# - 在添加之前检查项目是否存在于集合中的 native C# .NET 方法

    html - YouTube iframe在Blogspot页面和网页上显示禁止的错误