即使使用videoEmbedable = True,v3 api也会返回被阻止的内容

时间:2013-06-14 01:56:50

标签: youtube-api

我在搜索请求中使用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。我不是通过移动设备请求

请提供指示。

4 个答案:

答案 0 :(得分:4)

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

这是aaR72Xf_4wc所见到的内容,blog post about playback restrictions的相关部分是

  

偶尔会出现更微妙的限制   玩。目前并非所有这些都可通过API查询。对于   例如,某些视频只能在某组域上播放。

答案 1 :(得分:2)

我认为它不存在于2。5年前,但当请求contentDetails时,当前的API确实有区域块的指示。这是对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}}

答案 2 :(得分:0)

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

答案 3 :(得分:0)

也许您还需要包含videoSyndicated的过滤器。我不确定;这对我来说有点混乱。