Youtube 在 youtube 中为儿童设置了 3 个类别:探索、探索更多和大部分 youtube:https://blog.youtube/news-and-events/supervised-experiences-for-families-on-youtube/ 有什么方法可以使用 youtube 数据 api 找到视频属于哪个类别? 目前有一个名为“made for kids”的标签,但不涵盖探索和探索更多的视频部分,是否有其他标签可以找到它?
我不熟悉儿童版 YouTube,但我知道 YouTube API 确实包含内容分级字段以及视频是否可供儿童使用。
为了获得这些字段,您需要提供
contentDetails
(对于contentRating
字段)和status
(对于madeForKids
)part
s.
因此,如果您在请求 URL 中包含
part=contentDetails%2Cstatus
(API 浏览器的 contentDetails,status
字段中的part
),您可以获得如下响应:
{
"kind": "youtube#videoListResponse",
"etag": "O7p9bgAiPM19ezbt6zeLc3FfFBk",
"items": [
{
"kind": "youtube#video",
"etag": "vt0WWHcQtFaP5ZTFIL4LEN0YVqs",
"id": "Ks-_Mh1QhMc",
"contentDetails": {
"duration": "PT21M3S",
"dimension": "2d",
"definition": "hd",
"caption": "true",
"licensedContent": true,
"contentRating": {},
"projection": "rectangular"
},
"status": {
"uploadStatus": "processed",
"privacyStatus": "public",
"license": "youtube",
"embeddable": true,
"publicStatsViewable": true,
"madeForKids": false
}
}
],
"pageInfo": {
"totalResults": 1,
"resultsPerPage": 1
}
}
如您所见,这些项目有一个
contentDetails
对象和一个 contentRating
对象作为它的一部分,以及一个 status
对象和一个布尔 madeForKids
字段。
此类请求的 URL 可能如下所示:
https://youtube.googleapis.com/youtube/v3/videos?part=contentDetails%2Cstatus&id=Ks-_Mh1QhMc&key=[YOUR_API_KEY]
API 文档的这一部分 描述了内容评级字段。
不同的国家有不同的内容分级。
contentRating
对象包含对特定视频提供内容分级的所有国家/地区的内容分级。它还包含一个名为 ytRating
的字段,该字段设置为 ytAgeRestricted
对应于年龄限制的视频(我猜 YouTube 的孩子根本不会显示这些视频)
类似的,关于
madeForKids
的信息可以在这里找到。这对应于视频是否被归类为“为儿童制作”。
或者,您可以搜索视频并使用
safeSearch
参数,如 this question 中所述。使用API搜索视频时,您可以将safeSearch
设置为moderate
、none
或strict
。