使用Youtube api v2,可以轻松获取视频 . 只需发送如下查询:
Youtube api v2还有一个用于构建查询的交互式演示页面:http://gdata.youtube.com/demo/index.html
有了Youtube api v3,我不知道相应的方式 . 请用api v3指出方向 .
谢谢!
使用Youtube api v2,可以轻松获取视频 . 只需发送如下查询:
Youtube api v2还有一个用于构建查询的交互式演示页面:http://gdata.youtube.com/demo/index.html
有了Youtube api v3,我不知道相应的方式 . 请用api v3指出方向 .
谢谢!
13 回答
如果它能帮到这里的任何人,这就是我发现的东西,到目前为止似乎对我有用 . 我在发出此请求之前通过OAuth 2.0对该成员进行身份验证,这将为我提供经过身份验证的成员视频 . 与往常一样,您的个人里程可能会有所不同:D
channels#list方法将返回一个JSON,其中包含有关该 Channels 的一些信息,包括"uploads"播放列表的播放列表ID:
使用播放列表ID,您可以使用playlistItems#list方法获取视频:
您可以在文档页面的末尾测试它们 .
这应该做到这一点 . 此代码只获取并输出 Headers ,但您可以获得所需的任何详细信息
事情已经在API的V3中发生了很多变化 . 这是一个video,它引导您完成获取在给定 Channels 中上传的视频列表所需的v3 API调用,并使用API Explorer进行实时演示 .
YouTube Developers Live: Getting a Channel's Uploads in v3 - https://www.youtube.com/watch?v=RjUlmco7v2M
您发布的请求的等效实际上是3.0 api中的搜索,而不是播放列表请求 . 这样做也更容易 . 您确实需要为 Channels ID提取用户名 .
恩 . GET https://www.googleapis.com/youtube/v3/playlistItems?part=snippet&playlistId=UUGhCVGZ0ZSpe5hJHWyiLwHA&key=
如果考虑配额成本,遵循这个简单的算法可能是有益的 .
首先从https://www.youtube.com/feeds/videos.xml?channel_id=获取数据......这是一个简单的XML提要,它将为您提供视频ID 's, but you cannot specify further ' parts'(统计数据等) .
使用该列表中的视频ID,在/ videos API endpoints 上进行查询,该 endpoints 允许以逗号分隔的视频ID列表,这些列表只会产生1个配额成本,加上任何其他部分参数的0-2 . 正如@chrismacp指出的那样,使用/ search endpoints 更简单,但配额成本为100,可以快速加起来 .
当你进行第二次调用时,这里有一个资源考虑(cpu,内存等),但我相信在许多情况下这可能是一个有用的方法 .
另一种方法可能是通过以下方式获取当前oauth认证用户的播放列表:property mine = true
在验证后检索oauth access_token:https://developers.google.com/youtube/v3/guides/authentication
如果您想获取包含300多个视频的播放列表视频,请不要使用playlistitems.list . 你可以在谷歌链接“https://developers.google.com/youtube/v3/docs/playlistItems/list " in "试试吧”部分试用它 . 它返回undefined .
我也在我的项目中使用过 . 它仅返回undefined .
在PHP:我使用pageToken属性转到播放列表的所有页面 . 我希望它可以帮助你 .
以下是一些使用官方Google API节点库的代码(https://github.com/google/google-api-nodejs-client)
在node.js中,可以使用以下代码实现 .
需要
authKey
和channelId
作为options
对象参数 .获取数据后调用
cb
回调 .注意:axios用于RESTful请求 . 安装
上传功能可以
在这里查看完整代码https://thecodingshow.blogspot.com/2018/12/youtube-search-api-website.html