flickr.rb
DESCRIPTION:
An insanely easy interface to the Flickr photo-sharing service. By Scott Raymond. (& updated May 2008 by Chris Taggart, pushrod.wordpress.com & maintained since May 2010 by me - Rafal Piekarski)
It's a simple interface for using Flickr API - www.flickr.com/services/api/
FEATURES:
The flickr gem (famously featured in a RubyonRails screencast) had broken with Flickr's new authentication scheme and updated API. This has now been largely corrected, though not all current API calls are supported yet. If you need something let me know in pull requests.
SYNOPSIS:
require 'flickr' flickr = Flickr.new('some_flickr_api_key') # create a flickr client (get an API key from http://api.flickr.com/services/api/) user = flickr.users('sco@scottraymond.net') # lookup a user user.name # get the user's name user.location # and location user.photos # grab their collection of Photo objects... user.groups # ...the groups they're in... user.contacts # ...their contacts... user.favorites # ...favorite photos... user.photosets # ...their photo sets... user.tags # ...their tags... user.popular_tags # ...and their popular tags recentphotos = flickr.photos # get the 100 most recent public photos photo = recentphotos.first # or very most recent one photo.url # see its URL, photo.title # title, photo.description # and description, photo.owner # and its owner. File.open(photo.filename, 'w') do |file| file.puts p.file # save the photo to a local file end flickr.photos.each do |p| # get the last 100 public photos... File.open(p.filename, 'w') do |f| f.puts p.file('Square') # ...and save a local copy of their square thumbnail end end
REQUIREMENTS:
-
Xmlsimple gem
INSTALLATION:
Add this line to your application's Gemfile:
gem 'flickr.rb'
And then execute:
$ bundle
Or install it yourself as:
$ gem install flickr.rb
-
Gem homepage: rubygems.org/gems/flickr.rb
CONFIGURING:
You can provide just a api_key Flickr.new('api_key')
or full set of advanced configuration options:
flickr = Flickr.new(
api_key: 'your_api_key',
shared_secret: 'shared_secret_code',
auth_token: 'authSecretToken',
verify_ssl: true,
ca_file: '/path/to/cert.pem'
)
As you see you can turn off ssl verification (verify_ssl:
false
) or provide your own CA file (:ca_file
option)
for SSL verification. By default gem uses the
OpenSSL::X509::DEFAULT_CERT_FILE
definitions.
If you want to use this gem/plugin with Rails (for version 3) you can create configuration file in /config directory with specified api connection settings. For example:
development:
api_key: SomeLongApiKey
shared_secret: secret!
auth_token: authSecretToken
beta:
api_key: SomeLongApiKeyBeta
shared_secret: secretBeta!
auth_token: authSecretTokenBeta
DOCUMENTATION
Full documentation: ravbaker.github.io/flickr.
CONTRIBUTING
-
Fork it
-
Create your feature branch (
git checkout -b my-new-feature
) -
Commit your changes (
git commit -am 'Add some feature'
) -
Push to the branch (
git push origin my-new-feature
) -
Create new Pull Request
THANKS
-
Scott Raymond
-
Patrick Plattes
-
Chris Taggart
LICENSE
MIT License , see LICENSE
for more details.
© 2010 - 2014 Rafal “RaVbaker” Piekarski