flickr.rb

http://github.com/RaVbaker/flickr

Gem Version

DESCRIPTION:

An insanely easy interface to the Flickr photo-sharing service. By Scott Raymond. (& updated May 2008 by Chris Taggart, http://pushrod.wordpress.com & maintained since May 2010 by me - Rafal Piekarski)

It's a simple interface for using Flickr API - https://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('[email protected]')   # 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

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

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request

THANKS

  • Scott Raymond
  • Patrick Plattes
  • Chris Taggart

LICENSE

MIT License , see LICENSE for more details.

© 2010 - 2014 Rafal "RaVbaker" Piekarski