class FlickIt::FlickrApi
Public Class Methods
new(keywords=nil)
click to toggle source
# File lib/flickr_api.rb, line 9 def initialize(keywords=nil) @keywords = keywords @flickr_endpoint = 'https://api.flickr.com/services/rest/' @api_key = "920490d1b6ca2176925a316eb1ed4861" @default_query = {'api_key' => @api_key} end
Public Instance Methods
get_flickr_search_result(keyword)
click to toggle source
Api call for the search method in the flickr api, sorted by the most interesting photos
# File lib/flickr_api.rb, line 27 def get_flickr_search_result(keyword) response = request_flickr_api('flickr.photos.search', {"tags" => keyword, "sort" => 'interestingness-desc'}) photos = response["rsp"]["photos"]["photo"] if photos.nil? puts "Didn't find any photos for #{keyword}" else puts "Found some photos for #{keyword}" end photos end
request_flickr_api(method, params={})
click to toggle source
Default request for flickr api
# File lib/flickr_api.rb, line 17 def request_flickr_api(method, params={}) puts "Requesting the flickr api request for the method #{method}" query = {"method" => method}.merge! params query.merge! @default_query response = HTTParty.post(@flickr_endpoint, :query => query) raise "The flickr api request for the method #{method} is returning a #{response.code} response code" unless response.code == 200 response end
sort_results(keyword_results = get_flickr_results)
click to toggle source
# File lib/flickr_api.rb, line 39 def sort_results(keyword_results = get_flickr_results) keyword_results.map! do |results| results.first end keyword_results end