YouTube Data API(ruby)

注意:以下所有操作基本上vpn链接的环境下才能运行,包括(跑代码的)服务器

一、OAuth2.0认证

参考文档1:https://developers.google.com/youtube/v3/getting-started(注册google账户,设置项目)

参考文档2:http://blog.csdn.net/totogogo/article/details/6860966(oauth2.0认证)

参考文档3:http://wiki.ktmud.com/tips/google-oauth2.html(oauth2.0认证)

参考文档3:https://github.com/google/signet(signet Gem包)

步骤1、注册google账户

步骤2、在https://console.developers.google.com/project中新建project

步骤3、在“api和验证”中选择api ,在跳转出来的界面,选择 youtube Data API

步骤4、在“api和验证”中选择验证,在跳转出来的界面,选择上面一览,新建server-side web applications,在里面填写redirect_uri (在后面的程序中会用到,域名/XXX)

步骤5、新建rails程序程序源码可见https://github.com/lijinmin/youtobe_search

扫描二维码关注公众号,回复: 119360 查看本文章

讲解:调用gem包,新对象client = Signet::OAuth2::Client.new(parameters)parameters包括    

      :authorization_uri => 'https://api.instagram.com/oauth/authorize/?',
      :token_credential_uri => 'https://api.instagram.com/oauth/access_token',

      :redirect_uri => '域名/xxx‘

      :client_id => '在步骤4中会获得client_id'

      :client_secret => '在步骤4中会获得client_secret'

      :scope => '在https://developers.google.com/youtube/v3/docs/search/list中,选择try it now ,然后在跳转出来的页面选择oauth2.0认证,就会弹出一个小网页,里面的链接都可以作为scope,如::scope => 'https://www.google.com/m8/feeds/'

二、youtobe data api /search

参考文档1:https://developers.google.com/youtube/v3/docs/search/list

参考文档2:http://blog.163.com/lixiangqiu_9202/blog/static/53575037201311811618474/

步骤1:新建一个.rb文件,代码如下:

      q = "关键字"
     key = "your_key"(在OAuth2.0验证步骤4中,选择下面一览,点击新建获得key)

     search_uri = "https://www.googleapis.com/youtube/v3/search?key=#{key}&part=snippet&maxResults=1&q=#{q}"(maxResults的最大值为500,表示每次输出的视频数)
     puts res = RestClient.get(search_uri)

讲解:运行此代码,在输出的结果中,有vedio_id,把vedio_id放入链接http://www.youtube.com/watch?v=<videoId>,此链接便可以打开相应的视频,在输出的结果中还有搜索到的视频数和下一页token的值

猜你喜欢

转载自blog.csdn.net/lijinmin3903/article/details/47402439