class YouTube::YouTubePlaylist

Playlist on Youtube

Attributes

results[R]

Public Class Methods

find(keyword:) click to toggle source
# File lib/share_learning/youtube_playlist.rb, line 12
def self.find(keyword:)
  playlists = YouTube::YouTubeAPI.get_playlist(keyword)
  new(data: playlists)
end
new(data: nil) click to toggle source
# File lib/share_learning/youtube_playlist.rb, line 8
def initialize(data: nil)
  @results = load_data(data)
end

Private Instance Methods

load_data(playlists) click to toggle source

Get information of playlists

# File lib/share_learning/youtube_playlist.rb, line 20
def load_data(playlists)
  results = []
  playlists['items'].each do |playlist|
    playlistId = playlist['id']['playlistId']
    title = playlist['snippet']['title']
    des = playlist['snippet']['description']
    # image = playlist['snippet']['thumbnails']['high']['url']
    if playlist['snippet']['thumbnails']['high']['url'].nil?
      image = ''
    else
      image = playlist['snippet']['thumbnails']['high']['url']
    end
    playlistId = playlist['id']['playlistId']
    url = 'https://www.youtube.com/playlist?list=' + playlistId
    results.push({'playlistId' => playlistId, 'title' => title, 'description' => des, 'image' => image, 'url' => url})
  end
  results
end