从一些 Youtube 频道获取最新视频,使用 youtube API
get lateset videos from some Youtube channels, using youtube API
我正在尝试建立网站(为我自己),向我展示来自 YouTube 中 20 个频道的 5 个最新视频。
所以我在以下请求中为每个特定频道使用:
https://www.googleapis.com/youtube/v3/search?key={API_KEY}&channelId={CHANNEL_ID}&part=snippet,id&order=date&maxResults=5
每个请求花费 100 个单位,20 个频道是 2000 个单位,我只有 10,000 个 units/day 因为 youtube API 的配额。而且因为我试图弄清楚它是如何工作的,有时也有错误,所以我多次使用相同的请求,而且我的配额很快就用完了。
所以我的问题是:有没有办法替换SEARCH
中的请求,CHANNEL
/VIDEOS
(列表)请求来降低请求的成本(这个成本仅为 1 个单位)。
或者也许在一个请求中获取所有 20 个频道的所有 5 个视频?
如果有任何错误,请原谅我的英语
提前感谢大家。
您可以使用 Activities.list
API 端点,查询方式:
channelId=CHANNEL_ID
,
part=snippet,contentDetails
,
fields=items(snippet(type,publishedAt),contentDetails(upload))
,以及
publishedAfter=...
.
其中 CHANNEL_ID 在所有频道的 ID 之间变化
您的兴趣(因此 N
个渠道暗示 N
个端点调用)。
您应该计算一个有意义的 publishedAfter
值以传递给端点。将这样的值附加到您在应用程序中监控的每个频道,并保持 1 秒加上 publishedAt
属性 的值对应于最新的该频道的视频。
Initializing/resetting 这个每个通道的日期时间值仅在发出没有 publishedAfter
参数的端点调用时完成。
根据文档,您将从该端点获得一个由 Activities resource
项组成的结果集,其中包含以下信息:
contentDetails.upload (object)
The upload object contains information about the uploaded video. This property is only present if the snippet.type
is upload
.
contentDetails.upload.videoId (string)
The ID that YouTube uses to uniquely identify the uploaded video.
官方文档声明每个对 Activities.list
端点的调用都有一个 quota cost 一个单位。
我正在尝试建立网站(为我自己),向我展示来自 YouTube 中 20 个频道的 5 个最新视频。 所以我在以下请求中为每个特定频道使用:
https://www.googleapis.com/youtube/v3/search?key={API_KEY}&channelId={CHANNEL_ID}&part=snippet,id&order=date&maxResults=5
每个请求花费 100 个单位,20 个频道是 2000 个单位,我只有 10,000 个 units/day 因为 youtube API 的配额。而且因为我试图弄清楚它是如何工作的,有时也有错误,所以我多次使用相同的请求,而且我的配额很快就用完了。
所以我的问题是:有没有办法替换SEARCH
中的请求,CHANNEL
/VIDEOS
(列表)请求来降低请求的成本(这个成本仅为 1 个单位)。
或者也许在一个请求中获取所有 20 个频道的所有 5 个视频?
如果有任何错误,请原谅我的英语 提前感谢大家。
您可以使用 Activities.list
API 端点,查询方式:
channelId=CHANNEL_ID
,part=snippet,contentDetails
,fields=items(snippet(type,publishedAt),contentDetails(upload))
,以及publishedAfter=...
.
其中 CHANNEL_ID 在所有频道的 ID 之间变化
您的兴趣(因此 N
个渠道暗示 N
个端点调用)。
您应该计算一个有意义的 publishedAfter
值以传递给端点。将这样的值附加到您在应用程序中监控的每个频道,并保持 1 秒加上 publishedAt
属性 的值对应于最新的该频道的视频。
Initializing/resetting 这个每个通道的日期时间值仅在发出没有 publishedAfter
参数的端点调用时完成。
根据文档,您将从该端点获得一个由 Activities resource
项组成的结果集,其中包含以下信息:
contentDetails.upload (object)
The upload object contains information about the uploaded video. This property is only present if thesnippet.type
isupload
.contentDetails.upload.videoId (string)
The ID that YouTube uses to uniquely identify the uploaded video.
官方文档声明每个对 Activities.list
端点的调用都有一个 quota cost 一个单位。