【问题标题】:v3 api returns blocked content even with videoEmbedable = True即使使用 videoEmbedable = True,v3 api 也会返回被阻止的内容
【发布时间】:2023-03-17 05:09:01
【问题描述】:

我在搜索请求中使用 v3 api 和 videoEmbeddable="true"。

但是,当我尝试在我的网页上播放视频时,它说内容被阻止在此网站上显示。在 Youtube 上观看。

我可以使用一个不会返回非嵌入视频的参数吗?

*编辑 *

视频回复:

{u'items': [{u'snippet': {u'title': u'Jerez - Yamaha Preview'}, u'contentDetails': {u'definition': u'hd', u'contentRating': {u'ytRating': u'ytAllAudiences'}, u'caption': u'false', u'duration': u'PT1M21S', u'licensedContent': True, u'dimension': u'2d'}, u'status': {u'publicStatsViewable': True, u'privacyStatus': u'public', u'uploadStatus': u'processed', u'license': u'youtube', u'embeddable': True}, u'id': u'aaR72Xf_4wc'}]}

查询:

return yt_service_v3.videos().list(
  id='aaR72Xf_4wc',
  part="id,snippet,contentDetails,status",
  fields="items(id,snippet(title),contentDetails,status)",
).execute()

此视频不可嵌入到我的网页上,并且在回复中没有任何迹象表明此视频不可嵌入。

我同时请求 contentDetails 和 status。我不是通过移动设备请求

请指点。

【问题讨论】:

  • 你有一个偶然的例子吗?被屏蔽的查询和返回的视频。

标签: youtube-api


【解决方案1】:

一小部分视频具有由其内容所有者应用的域级白名单或黑名单。这些限制不会反映在 API 响应中。

这就是您在aaR72Xf_4wc 中看到的内容,blog post about playback restrictions 的相关部分是

偶尔会有更微妙的限制 玩。目前并非所有这些都可以通过 API 查询。为了 例如,有些视频只能在特定的一组域上播放。

【讨论】:

  • 我请求/希望 google/YT 可以为此做点什么。外部开发人员为出色的用户体验付出了很多努力,这是不可取的。感谢您的回复。
  • 嗨,杰夫,可以解决这个问题吗?因为这些视频可以在 Youtube 上观看。我需要做什么才能获得在我的网站上播放这些视频的权利/访问权限?我需要提交任何特殊要求吗?请提供帮助?
  • 你无能为力;由视频的内容所有者决定可以嵌入的位置。
【解决方案2】:

我认为它在 2.5 年前不存在,但当前的 API 在请求 contentDetails 时确实有区域块的指示。这是对 2 个视频的此类请求的响应,第一个被阻止,第二个未被阻止。注意regionRestriction 键:

{u'etag': u'"iDqJ1j7zKs4x3o3ZsFlBOwgWAHU/ZqEbAZJ-JFnYX3v37ZRuhK8FFN8"',
 u'items': [{u'contentDetails': {u'caption': u'false',
    u'definition': u'sd',
    u'dimension': u'2d',
    u'duration': u'PT2M5S',
    u'licensedContent': False,
    u'regionRestriction': {u'blocked': [u'NU',
      u'BY',
      u'NP',
      u'NR',
      u'WS',
      u'TD',
      u'SY',
      u'NZ',
      u'NE',
      .
      .
      .
      u'TG']}},
   u'etag': u'"iDqJ1j7zKs4x3o3ZsFlBOwgWAHU/hM4srkgNUiZj2GtAhLDFoFrHnlk"',
   u'id': u'WGf4mSBoCzQ',
   u'kind': u'youtube#video'},
  {u'contentDetails': {u'caption': u'false',
    u'definition': u'sd',
    u'dimension': u'2d',
    u'duration': u'PT17M2S',
    u'licensedContent': False},
   u'etag': u'"iDqJ1j7zKs4x3o3ZsFlBOwgWAHU/JNjXh3lMwcaC9gtbzM-KmOQLh44"',
   u'id': u'Tw75Dt8fBBs',
   u'kind': u'youtube#video'}],
 u'kind': u'youtube#videoListResponse',
 u'pageInfo': {u'resultsPerPage': 2, u'totalResults': 2}}

【讨论】:

    【解决方案3】:

    如果您从移动设备访问,您也可以filter by syndication。最后但并非最不重要的是region specific blockages

    【讨论】:

    • 我编辑了我的帖子。被阻止视频的 contentDetails 中没有 regionRestriction 并且 status.embeddable = true。请帮忙。
    【解决方案4】:

    也许您还需要包含videoSyndicated 的过滤器。不过我不确定;这让我有点困惑。

    【讨论】:

      猜你喜欢
      • 2021-03-29
      • 2015-05-05
      • 1970-01-01
      • 2012-01-14
      • 2013-08-19
      • 1970-01-01
      • 2020-11-29
      • 1970-01-01
      • 2020-12-09
      相关资源
      最近更新 更多