{"id":15508655,"url":"https://github.com/jkraemer/bye-flickr","last_synced_at":"2026-06-19T08:02:33.384Z","repository":{"id":66471259,"uuid":"131238352","full_name":"jkraemer/bye-flickr","owner":"jkraemer","description":"Download all photos and metadata from your Flickr account.","archived":false,"fork":false,"pushed_at":"2024-04-29T12:16:53.000Z","size":11,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-01-02T02:42:22.069Z","etag":null,"topics":["backup","flickr","flickr-api"],"latest_commit_sha":null,"homepage":null,"language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jkraemer.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-04-27T03:03:38.000Z","updated_at":"2024-04-29T12:16:57.000Z","dependencies_parsed_at":"2024-04-29T13:37:13.744Z","dependency_job_id":"079a15f4-733f-4386-a189-2add0559bfed","html_url":"https://github.com/jkraemer/bye-flickr","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jkraemer%2Fbye-flickr","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jkraemer%2Fbye-flickr/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jkraemer%2Fbye-flickr/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jkraemer%2Fbye-flickr/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jkraemer","download_url":"https://codeload.github.com/jkraemer/bye-flickr/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240073228,"owners_count":19743722,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["backup","flickr","flickr-api"],"created_at":"2024-10-02T09:39:33.372Z","updated_at":"2026-05-01T06:30:20.177Z","avatar_url":"https://github.com/jkraemer.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"Bye, Flickr!\n============\n\nSimple app to download everything from your flickr account. Your photos will be\nput into a directory structure reflecting Flickr collections and sets. Metadata\nfor collections, sets and photos will be stored as JSON files, as well as\ncontacts and groups data.\n\nInstallation\n------------\n\nYou need Ruby. I used it with Ruby 2.5, 2.4 should be ok as well. Install the\ngem, run `bye-flickr -h` for usage info.\n\n~~~~\n\n$ gem install bye-flickr\nSuccessfully installed bye-flickr-0.1.0\n1 gem installed\n\n$ bye-flickr -h\nusage: /home/jk/.gem/ruby/2.5.1/bin/bye-flickr [options]\nRequired arguments (create API key and secret in the Flickr web interface):\n    -d, --dir     directory to store data\n    -k, --key     API key\n    -s, --secret  API secret\n\nOptional arguments, if you already have authorized the app:\n    --at          Access token\n    --as          Access token secret\n\nOther commands:\n    --version     print the version\n    -h, --help\n\n~~~~\n\nUsage\n-----\n\nFirst of all, head to your [Flickr\naccount](https://www.flickr.com/services/apps/create/apply/) and create an API\nkey. Choose non-commercial and pick any name you like for your 'App'. In the\nend you will get a key and a secret which are what you need for the `-k` and\n`-s` options. Pick a directory in a location with enough disk space and there you go:\n\n~~~~\n\n$ bye-flickr -d /space/photos -k lengthyAPIkey -s notsolongsecret\ntoken_rejected\nOpen this url in your browser to complete the authentication process:\nhttps://api.flickr.com/services/oauth/authorize?oauth_token=some-token\u0026perms=read\nCopy here the number given when you complete the process.\n\n~~~~\n\nDo as you're told and go to the URL, authorize the app, copy/paste the nine\ndigit number and hit Enter.\n\n~~~~\n179-386-583\nYou are now authenticated as flickrUserName with token some-other-token and secret yetanothersecret.\n~~~~\n\nFor subsequent runs you can take note of the access token and secret you just\ngot and use them as values for the `--at` and `--as` command line options. This\nwill save you from having to authorize the app through the web interface over\nand over again.\n\nTo show it's working the app prints out a `.` for every photo downloaded, and\nalso prints the name of the directory (collection/set) it's currently working\non. Photos not belonging to any set are, surprise, put into a directory named\n`not in any set`.\n\nDepending on the size of your Flickr account and your bandwidth this may take a\nlong time. Downloading 26GB from my personal account took a couple of hours on\nmy Hetzner server.\n\n\nCaveats\n-------\n\nI built this because I wanted to download my photos, so naturally I cut some\ncorners where I could. Two things that I'm aware of which might need improvement are:\n\n- Support Flickr's pagination. If you have sets with more than 500 photos in it\n  (or more than 500 Photos that are not in any set) you will need that because\n  500 is the maximum number of photos you can get with a single API request. My\n  sets aren't that large so I skipped this.\n- There is no support for resuming an unfinished download, the app always\n  starts from scratch.\n\nPull Requests welcome :)\n\n\nLicense\n-------\n\nMIT. See LICENSE for the text.\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjkraemer%2Fbye-flickr","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjkraemer%2Fbye-flickr","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjkraemer%2Fbye-flickr/lists"}