Skip to content

Commandline app to download Flickr photos, sets and collections with metadata

License

Notifications You must be signed in to change notification settings

codebrane/flikbak

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

61 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Welcome to FlikBak!

FlikBak is a commandline utility that downloads your Flickr photos to your computer.

o Requirements
o Usage
o Photos in sets
o Photos not in sets

Requirements
============
FlikBak only requires a normal install of Ruby 2. No extra gems are required.

To use FlikBak you will need a Flickr API key and secret. The first time you run FlikBack it will open the default browser for you to grant it permission to access your Flickr account. Flickr will display a code in the browser. Copy/paste this code into the terminal where requested. You only need to do this once as the OAuth tokens are stored in TOKENS_DIR. If you delete the tokens, FlikBak will recreate them using the browser.

Usage
=====
ruby flikbak.rb APIKEY SECRET TOKENS_DIR PHOTOS_DIR MODE OVERWRITE

APIKEY = your Flickr api key.
SECRET = your Flickr api secret.
TOKENS_DIR = full path of directory to store oauth tokens. If this gets deleted or emptied, flickbak will rebuild the oauth tokens using the browser.
PHOTOS_DIR = full path of directory to store downloaded photos and metadata.
MODE = One of: sets notinset collections
OVERWRITE = one of: overwrite keep

e.g. to download all your collections:
ruby flikbak.rb YOUR_APIKEY YOUR_SECRET /Users/you/flickr/tokens /Users/you/flickr/photos collections overwrite

If you have to cancel FlikBak during a lengthy download, use keep as the OVERWRITE parameter next time to skip over those you've already downloaded. If you need to redownload photos, set it to overwrite.

User info
=========
The following files are created:
PHOTOS_DIR/user/contacts.json
PHOTOS_DIR/user/groups.json

Photos in sets
==============
Photos in sets are downloaded to:
PHOTOS_DIR/sets/PhotosetTitle-PhotosetId/PhotosetTitle.json
PHOTOS_DIR/sets/PhotosetTitle-PhotosetId/PhotoTitle-PhotoId/PhotoTitle-PhotoId.original_file_extension
PHOTOS_DIR/sets/PhotosetTitle-PhotosetId/PhotoTitle-PhotoId/PhotoTitle-PhotoId.json

Photos not in sets
==================
Photos not in sets are downloaded to:
PHOTOS_DIR/not_in_set/PhotoTitle-PhotoId/PhotoTitle-PhotoId.original_file_extension
PHOTOS_DIR/not_in_set/PhotoTitle-PhotoId/PhotoTitle-PhotoId.json

Collections
==================
Collections are downloaded to:
PHOTOS_DIR/collections/CollectionTitle-CollectionId/PhotosetTitle/PhotosetTitle.json
PHOTOS_DIR/collections/CollectionTitle-CollectionId/PhotosetTitle/PhotoTitle-PhotoId/PhotoTitle-PhotoId.original_file_extension
PHOTOS_DIR/collections/CollectionTitle-CollectionId/PhotosetTitle/PhotoTitle-PhotoId/PhotoTitle-PhotoId.json