Skip to content

yifan70932/python-flickr-api

 
 

Repository files navigation

Python Flickr API

A Python implementation of the Flickr API.

The project provides an almost exhaustive access to the Flickr API, through an object-oriented Python interface.

Quick Start

  1. Install the package via PyPi (or manually cloning the repo):
pip install flickr_api
  1. Aquire Flickr API keys and set up authorisation as per the Wiki

  2. Start using the OO interface!

Here's an example of fetching a list of a specific users' public photos:

user = flickr_api.Person.findByUserName("tomquirkphoto")
photos = user.getPhotos()

If you've authorised yourself as a user, you can do cooler things like upload photos:

flickr_api.upload(photo_file="path_to_the_photo_file", title="My title")

And even create albums (a.k.a Photosets):

photoset = flickr_api.Photoset.create(title="The title of the photoset", primary_photo=cover_photo)

Features

Consult the API Reference for a (semi) complete list

  • Object Oriented implementation
  • (Almost) comprehensive implementation
  • Uses OAuth for authentication
  • Context-sensitive objects (depending on the query context, objects may exhibit different attributes)
  • An interface for direct seamless calls to the Flickr API.
  • A (Django-compliant) caching mechanism

Requires:

Please note that flickrapi on Pypi is a different distribution by a different author.

API Guide

A brief guide is available in the Wiki section.

Projects using this API

create a PR to add your project here!

  • FlickrBox - A Dropbox-like backup experience for your free 1TB Flickr library!

Development

This project uses pipenv to create a virtualenv for developement and control dependencies.

To run tests you can simply run it with:

pipenv install --dev
pipenv run nose2

Notes

The project is still at an early stage and requires a lot of testing. Any help, including bug reports, is appreciated!

About

A python implementation of the Flickr API

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 100.0%