How to use YouTube API to check if a video is restricted?

依然范特西╮ 提交于 2020-01-01 10:16:52

问题


When embedding this YouTube video for example, we get This video contains content from... who has blocked it from display on the website error message.

How can I use the API to find if a video is blocked or not?

The nearest parameters I found are status and contentDetails:

GET https://www.googleapis.com/youtube/v3/videos?part=status&id=dYQ2IyMuPes&key={YOUR_API_KEY}

Which returns no indication about the restriction:

   "contentDetails": {
    "duration": "PT2M",
    "dimension": "2d",
    "definition": "hd",
    "caption": "false",
    "licensedContent": true,
    "projection": "rectangular"
   },
   "status": {
    "uploadStatus": "processed",
    "privacyStatus": "public",
    "license": "youtube",
    "embeddable": true,
    "publicStatsViewable": false
   }

回答1:


Check if it is restricted in the region contentDetails.regionRestriction or age-restricted content contentDetails.contentRating or content claimed by partner contentDetails.licensedContent? I am just speculating here too.

Edit: You can use this to check if it is embeddable too status.embeddable.




回答2:


Be sure to have the "part" set correctly. It's a required field and you probably have "snippet there" and you need "contentDetails". (or "snippet,contentDetails" for both)

Example:

GET https://www.googleapis.com/youtube/v3/videos?part=contentDetails&id=OoKpYXTmYak&key={YOUR_API_KEY}


{
 "kind": "youtube#videoListResponse",
 "etag": "\"XpPGQXPnxQJhLgs6enD_n8JR4Qk/Xn7P-qyclepPOIFp9Bn69FdtR-4\"",
 "pageInfo": {
  "totalResults": 1,
  "resultsPerPage": 1
 },
 "items": [
  {

   "kind": "youtube#video",
   "etag": "\"XpPGQXPnxQJhLgs6enD_n8JR4Qk/_vu8XkjotVqxtJKQ2peTcRK8TYE\"",
   "id": "OoKpYXTmYak",
   "contentDetails": {
    "duration": "PT1M41S",
    "dimension": "2d",
    "definition": "hd",
    "caption": "false",
    "licensedContent": true,
    "regionRestriction": {
     "allowed": [
      "ES",
      "US"
     ]
    },
    "projection": "rectangular"
   }
  }
 ]
}

This is allowed in the US and Spain only



来源:https://stackoverflow.com/questions/38761944/how-to-use-youtube-api-to-check-if-a-video-is-restricted

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!