Skip to content

Instantly share code, notes, and snippets.

@mikespokefire
Created March 28, 2012 12:52
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mikespokefire/2225887 to your computer and use it in GitHub Desktop.
Save mikespokefire/2225887 to your computer and use it in GitHub Desktop.
namespace :flickr do
desc "Pull all data from Flickr"
task :pull => :environment do
# Remove everything to do with the gallery
#Album.destroy_all
#Photo.destroy_all
#PhotoSize.destroy_all
# Variables
neil_flickr_id = "57951266@N03"
tree = flickr.collections.getTree(:user_id => neil_flickr_id)
#loop for each top level collection in the tree...
tree.each do |collection|
puts collection['title']
end
# # Fetch all albums and add each to the database
# albums = []
# # Loop through all photosets
# flickr.photosets.getList(:user_id => neil_flickr_id).each do |flickr_photoset|
# puts "Adding #{flickr_photoset['title']}"
# albums << Album.create!({
# :flickr_id => flickr_photoset["id"],
# :title => flickr_photoset["title"],
# :description => flickr_photoset["description"],
# :primary => flickr_photoset["primary"]
# #:photo_count => flickr_photoset["photos"]
# })
# photos = []
# # Loop through all photos within the set
# flickr.photosets.getPhotos(:photoset_id => flickr_photoset["id"]).photo.each do |picture|
# puts " Adding #{picture['title']} in #{flickr_photoset['title']}"
# photos << Photo.create!({
# :flickr_id => picture["id"],
# :title => picture["title"],
# :is_primary => picture["isprimary"],
# :album_id => Album.find_by_flickr_id(flickr_photoset["id"]).id
# })
# photo_sizes = []
# # Loop through all the sizes for the above photo
# flickr.photos.getSizes(:photo_id => picture["id"]).size.each do |flickr_photo_size|
# puts " Adding #{picture['title']} #{flickr_photo_size['label']}"
# photo_sizes << PhotoSize.create!({
# :label => flickr_photo_size["label"].downcase.parameterize,
# :source => flickr_photo_size["source"],
# :url => flickr_photo_size["url"],
# :width => flickr_photo_size["width"],
# :height => flickr_photo_size["height"],
# :photo_id => Photo.find_by_flickr_id(picture["id"]).id
# })
# end
# end
# end
end
end
** Invoke flickr:pull (first_time)
** Invoke environment (first_time)
** Execute environment
** Execute flickr:pull
{"id":"5792865455775057","title":"Yearly Events","description":"","iconlarge":"/images/collection_default_l.gif","iconsmall":"/images/collection_default_s.gif","collection":[{"id":"57965466212-7546546547","title":"Birthdays","description":"","iconlarge":"/images/collection_default_l.gif","iconsmall":"/images/collection_default_s.gif","set":[{"id":"7215762899669936613","title":"Bill S 21st 2012","description":""}]}]}
rake aborted!
can't convert String into Integer
/Users/neiltonge/code/neiltonge/Rakefile:142:in `[]'
/Users/neiltonge/code/neiltonge/Rakefile:142:in `block (3 levels) in <top (required)>'
/Users/neiltonge/.rvm/gems/ruby-1.9.2-p290@neiltonge/gems/flickraw-0.9.5/lib/flickraw/response.rb:41:in `block in each'
/Users/neiltonge/.rvm/gems/ruby-1.9.2-p290@neiltonge/gems/flickraw-0.9.5/lib/flickraw/response.rb:41:in `each'
/Users/neiltonge/.rvm/gems/ruby-1.9.2-p290@neiltonge/gems/flickraw-0.9.5/lib/flickraw/response.rb:41:in `each'
/Users/neiltonge/code/neiltonge/Rakefile:138:in `block (2 levels) in <top (required)>'
/Users/neiltonge/.rvm/gems/ruby-1.9.2-p290@global/gems/rake-0.9.2.2/lib/rake/task.rb:205:in `call'
/Users/neiltonge/.rvm/gems/ruby-1.9.2-p290@global/gems/rake-0.9.2.2/lib/rake/task.rb:205:in `block in execute'
/Users/neiltonge/.rvm/gems/ruby-1.9.2-p290@global/gems/rake-0.9.2.2/lib/rake/task.rb:200:in `each'
/Users/neiltonge/.rvm/gems/ruby-1.9.2-p290@global/gems/rake-0.9.2.2/lib/rake/task.rb:200:in `execute'
/Users/neiltonge/.rvm/gems/ruby-1.9.2-p290@global/gems/rake-0.9.2.2/lib/rake/task.rb:158:in `block in invoke_with_call_chain'
/Users/neiltonge/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/monitor.rb:201:in `mon_synchronize'
/Users/neiltonge/.rvm/gems/ruby-1.9.2-p290@global/gems/rake-0.9.2.2/lib/rake/task.rb:151:in `invoke_with_call_chain'
/Users/neiltonge/.rvm/gems/ruby-1.9.2-p290@global/gems/rake-0.9.2.2/lib/rake/task.rb:144:in `invoke'
/Users/neiltonge/.rvm/gems/ruby-1.9.2-p290@global/gems/rake-0.9.2.2/lib/rake/application.rb:116:in `invoke_task'
/Users/neiltonge/.rvm/gems/ruby-1.9.2-p290@global/gems/rake-0.9.2.2/lib/rake/application.rb:94:in `block (2 levels) in top_level'
/Users/neiltonge/.rvm/gems/ruby-1.9.2-p290@global/gems/rake-0.9.2.2/lib/rake/application.rb:94:in `each'
/Users/neiltonge/.rvm/gems/ruby-1.9.2-p290@global/gems/rake-0.9.2.2/lib/rake/application.rb:94:in `block in top_level'
/Users/neiltonge/.rvm/gems/ruby-1.9.2-p290@global/gems/rake-0.9.2.2/lib/rake/application.rb:133:in `standard_exception_handling'
/Users/neiltonge/.rvm/gems/ruby-1.9.2-p290@global/gems/rake-0.9.2.2/lib/rake/application.rb:88:in `top_level'
/Users/neiltonge/.rvm/gems/ruby-1.9.2-p290@global/gems/rake-0.9.2.2/lib/rake/application.rb:66:in `block in run'
/Users/neiltonge/.rvm/gems/ruby-1.9.2-p290@global/gems/rake-0.9.2.2/lib/rake/application.rb:133:in `standard_exception_handling'
/Users/neiltonge/.rvm/gems/ruby-1.9.2-p290@global/gems/rake-0.9.2.2/lib/rake/application.rb:63:in `run'
/Users/neiltonge/.rvm/gems/ruby-1.9.2-p290@global/gems/rake-0.9.2.2/bin/rake:33:in `<top (required)>'
/Users/neiltonge/.rvm/gems/ruby-1.9.2-p290@global/bin/rake:19:in `load'
/Users/neiltonge/.rvm/gems/ruby-1.9.2-p290@global/bin/rake:19:in `<main>'
Tasks: TOP => flickr:pull
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment