使用ruby google-api-client获取youtube视频数据

时间:2013-04-11 12:50:01

标签: ruby youtube-api google-api-client

Bonjour!

我看过很多类似的问题,但无法弄清楚为什么他们都没有给出明确的答案。

我正在尝试使用google-api-client gem连接到youtube数据api,以从youtube视频链接中检索缩略图。 我假设我不需要处理(模糊我)oAuth身份验证。

  • 第一步:我使用google api控制台创建项目,授权Youtube Data API。在“API访问”标签中,选择“创建客户端ID ...”,并选择“服务帐户”选项。

它给了我一个客户ID,电子邮件地址和公钥指纹。

  • 第二:我使用google-api-client gem创建我的ruby脚本。我只是在以下文档中复制/粘贴示例:

    要求'google / api_client'

    client = Google :: APIClient.new

从我的客户端对象我想我可以直接打电话 client.execute() 用我的所有视频信息获取原子信息。但我只知道该怎么做。

也许我还必须获得oAuth授权?要获得令牌?

我错过了什么?

非常感谢您的贡献。

1 个答案:

答案 0 :(得分:7)

那不是那么难,我发现了怎么做。

在这种情况下,您无需处理oAuth身份验证。您需要生成服务器API密钥并在每个请求时发送它。

以下代码段有助于检索有关API提供的视频的所有信息。

require 'google/api_client'
require 'json'

client = Google::APIClient.new

youtube = client.discovered_api('youtube', 'v3')

client.authorization = nil

result = client.execute :key => "<YOUR_SERVER_API_KEY>", :api_method => youtube.videos.list, :parameters => {:id => '<YOUR_VIDEO_ID>', :part => 'snippet'}

result = JSON.parse(result.data.to_json)